1 回答
TA贡献1828条经验 获得超3个赞
下面我提供了称为表驱动测试的测试用例形式
type args struct {
}
tests := []struct {
name string
args args
want bool
}{
{
"First",
args{
},
true,
},
{
"Second",
args{
},
false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
})
}
在下面的代码中,我们所做的是:
*用三个参数声明一个 Struct([]struct) 片段
1.Name:- 它将用于在 t.Run 中命名测试。
2.Args:- 在这里我们指定我们要测试的函数所需的参数。
3.Want:- 这是布尔表达式,将用于与我们的结果输出进行比较。
现在在你的代码中你已经在数据库中添加了一些东西所以你需要调用一个函数来获取记录。
如果 err 等于 nil 通过 addblog 函数。
之后,您可以通过比较结果并将结果保存为 bool 来比较是否保存了所有值,我们可以将其用于与我们想要的 bool 表达式进行比较。
会发生这样的事情:
err:= AddBlog(k.args.query)
if err==nil{
got,err:=fetchBlog(k.args.query)
if val:=err==nil && got.id==id;val!=k.want{
t.Fail()
}
}
注意:这里我比较了 Id 属性,因为它是唯一的。
你需要先在你的参数中声明它。
- 1 回答
- 0 关注
- 97 浏览
添加回答
举报