我正在通過(guò) Visual Studio Code 對(duì) Golang 項(xiàng)目進(jìn)行單元測(cè)試,我使用的依賴項(xiàng)之一稱為mockery. 它通過(guò)在找到的包中創(chuàng)建目標(biāo) Golang 接口的模擬來(lái)工作。因此,即使我發(fā)誓要測(cè)試所述包中的所有內(nèi)容,我的測(cè)試覆蓋率也只有 58%。然而,當(dāng)我從包中取出模擬(事實(shí)證明我不需要它)時(shí),我的測(cè)試覆蓋率肯定像雨一樣猛增到我預(yù)期的 97.9%。有什么方法可以告訴 Visual Studio Code“嘿,不要在你的包覆蓋率計(jì)算中包含嘲弄模擬(以 開(kāi)頭mock_)”?
1 回答

哆啦的時(shí)光機(jī)
TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
解決方案是使用 mockery -inpkg 和 -testonly 標(biāo)志,這樣生成的模擬將轉(zhuǎn)到定義接口的原始包。生成的文件也將具有 _test.go 后綴,因此它們將在您構(gòu)建程序時(shí)被代碼覆蓋工具和編譯器忽略。
- 1 回答
- 0 關(guān)注
- 116 瀏覽
添加回答
舉報(bào)
0/150
提交
取消