golang单元测试

使用testing进行单元测试

  1. golang的测试库testing

  2. 测试文件与被测试文件在同一个包中

  3. 测试文件名为被测试文件名(去后缀)_test.go

  4. 测试用例函数Test开头,TestFunc1(t *testing.T)

  5. 一个测试用例文件中可以有多个测试用例函数

在测试用例函数调用被测试函数,根据函数返回结果与预期的正确结果的比较,

判断函数是否正确。t.Log输出日志,t.Fatal输出错误信息。

执行测试文件的方式

  • 执行全部测试文件中全部函数 go test 如果需要输出日志信息go test -v

  • 测试单个文件 go test -v xxx_test.go xxx.go
  • 测试单个方法 go test -v -test.run TestFunc1

// 测试文件  bt_test.go
package goo

import "testing"

func TestFunc1(t *testing.T) {
    result := Addto(100)
    if result == 5050 {
        t.Log("结果正确")
    } else {
        t.Fatal("结果有误")
    }
}
// 被测试文件  bt.go
package goo

func Func1(n int) int {
    if n == 1 {
        return 1
    } else if n <= 0 {
        return -1
    } else {
        return Func1(n-1) + n
    }
}
// 执行结果
=== RUN   TestAddto
--- PASS: TestAddto (0.00s)
    bt_test.go:8: 结果正确
PASS

相关文章

什么是Go的接口? 接口可以说是一种类型,可以粗略的理解为他...
1、Golang指针 在介绍Golang指针隐式间接引用前,先简单说下...
1、概述 1.1&#160;Protocol buffers定义 Protocol buffe...
判断文件是否存在,需要用到"os"包中的两个函数: os.Stat(...
1、编译环境 OS :Loongnix-Server Linux release 8.3 CPU指...
1、概述 Golang是一种强类型语言,虽然在代码中经常看到i:=1...