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
posted @ 2019-02-08 17:23  苏幕遮_凌枫  阅读(189)  评论(0编辑  收藏  举报