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 關注
- 134 瀏覽
添加回答
舉報