第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Go:沒有對包進行測試時的錯誤覆蓋率

Go:沒有對包進行測試時的錯誤覆蓋率

Go
冉冉說 2022-05-10 13:41:29
我有一個具有以下結構的 Go 項目:foo/foo.go foo/foo_test.go main.go如您所見,沒有針對main.go.我使用以下命令收集覆蓋率報告:go test ./foo ./ -coverprofile=coverage.txt -covermode=atomic在這里./foo并./顯示在哪里尋找包裹。問題:我將覆蓋率報告發(fā)送到 codecov.io,這表明我的代碼 100% 被測試覆蓋。但這不是真的,因為我main.go根本沒有測試。似乎系統(tǒng)只計算那些明確指定測試文件的包。問題:如何修復覆蓋率報告以計算有關未測試包的信息?注意:你可以在GitHub 上找到我的項目,真實的統(tǒng)計數(shù)據(jù)在這里。該項目具有不同的結構,但問題仍然存在(錯誤的報道)。
查看完整描述

2 回答

?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

-coverpkg標志可用于指定用作覆蓋分析基礎的包。

引用命令 go:測試標志:

-coverpkg pattern1,pattern2,pattern3
    Apply coverage analysis in each test to packages matching the patterns.
    The default is for each test to analyze only the package being tested.
    See 'go help packages' for a description of package patterns.
    Sets -cover.

所以在你的具體例子中,這將做到:

go test -coverpkg=.,./foo -coverprofile=coverage.txt -covermode=atomic . ./foo

要將其應用于完整的模塊/項目,您可以使用:

go test -coverpkg=./... -coverprofile=coverage.txt -covermode=atomic ./...

另一種選擇是將“空”測試文件放入當前沒有測試文件的包的文件夾中。這樣它們將自然地包含在默認覆蓋分析中,但顯然它們不會覆蓋任何內容。


查看完整回答
反對 回復 2022-05-10
?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

試試這個:

go test -coverpkg=./... -race -coverprofile=coverage.txt -covermode=atomic ./..

http://img1.sycdn.imooc.com//6279fb3400017a9711790370.jpg

查看完整回答
反對 回復 2022-05-10
  • 2 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號