分享
go语言单元测试demo
m718281962 · · 2208 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
文件mymath.go
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
}
测试文件 mymath_test.go(所有测试文件都必须以*_test.go结尾)
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)
}
}
}执行 go test
PASS ok myweb/lib/session 3.863s
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信2208 次点击
上一篇:go语言web项目翻页实现
下一篇:在go语言中统计程序执行时间
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
文件mymath.go
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
}
测试文件 mymath_test.go(所有测试文件都必须以*_test.go结尾)
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)
}
}
}执行 go test
PASS ok myweb/lib/session 3.863s