Go语言学习笔记-测试
单元测试
- t.Error()测试失败,后面的可以执行,其他测试继续执行
- t.Fatal()测试失败,后面的不会执行,其它测试继续执行
package testingimport (
"fmt"
"testing""github.com/stretchr/testify/assert"
)func TestSquare(t *testing.T) {
inputs := [...]int{1, 2, 3}
expected := [...]int{1, 4, 9}
for i := 0;
i < len(inputs);
i++ {
ret := square(inputs[i])
if ret != expected[i] {
t.Errorf("input is %d, the expected is %d, the actual %d",
inputs[i], expected[i], ret)
}
}
}func TestErrorInCode(t *testing.T) {
fmt.Println("Start")
t.Error("Error")
fmt.Println("End")
}
func TestFailInCode(t *testing.T) {
fmt.Println("Start")
t.Fatal("Error")
fmt.Println("End")
}func TestSquareWithAssert(t *testing.T) {
inputs := [...]int{1, 2, 3}
expected := [...]int{1, 4, 9}
for i := 0;
i < len(inputs);
i++ {
ret := square(inputs[i])
assert.Equal(t, expected[i], ret)
}
}
【Go语言学习笔记-测试】代码覆盖率 -coverbenchmark
断言
go test -bench=. -benchmem
> 方法名以Benchmark开头,参数testing.B
benchmem 打印内存分配次数## bdd
推荐阅读
- EffectiveObjective-C2.0|EffectiveObjective-C2.0 笔记 - 第二部分
- Android中的AES加密-下
- 【读书笔记】贝叶斯原理
- 【韩语学习】(韩语随堂笔记整理)
- 人性的弱点-笔记
- 读书笔记:博登海默法理学|读书笔记:博登海默法理学 —— 正义的探索(1)
- D034+3组苏曼+《写作这回事》读书笔记
- 《自我的追寻》读书笔记3
- 最有效的时间管理工具(赢效率手册和总结笔记)
- C语言学习|第十一届蓝桥杯省赛 大学B组 C/C++ 第一场