go语言单元测试demo
package mymath func Add(a, b int) int { return a + b } func Max(a, b int) (ret int) { ret = a if b > a { ret = b } return }
package mymath_test import ( "mymath" "testing" ) type mathTest struct { a, b, ret int } var addTest = []mathTest{ mathTest{4, 6, 10}, mathTest{5, 6, 11}, mathTest{2, -6, -4}, } var maxTest = []mathTest{ mathTest{3, 5, 5}, mathTest{-3, 5, 5}, mathTest{-3, -5, -3}, } func TestAdd(t *testing.T) { for _, v := range addTest { ret := mymath.Add(v.a, v.b) if ret != v.ret { t.Errorf("%d add %d, want %d, but get %d", v.a, v.b, v.ret, ret) } } } func TestMax(t *testing.T) { for _, v := range maxTest { ret := mymath.Max(v.a, v.b) if ret != v.ret { t.Errorf("the max number between %d and %d is want %d, but get %d", v.a, v.b, v.ret, ret) } } }
测试文件 mymath_test.go(所有测试文件都必须以*_test.go结尾)
执行 go test
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。