首頁 > 後端開發 > Golang > 主體

如何衡量 Go 中的測試覆蓋率?

DDD
發布: 2024-11-28 03:57:12
原創
274 人瀏覽過

How can I measure test coverage in Go?

如何測量 Go 中的測試覆蓋率

軟體測試中的挑戰之一是確定測試覆蓋被測程式碼的程度。這個指標稱為測試覆蓋率,對於確保測試全面有效至關重要。

Go 的測試覆蓋率能力

在 Go 版本 1.2 及更高版本中,go test指令現在支援測試覆蓋率結果的計算和顯示。要啟用覆蓋率,只需在執行測試時使用 -cover 標誌。

go test -cover
登入後複製

這將產生基本的覆蓋率報告,指示測試覆蓋的語句的百分比。

詳細的覆蓋率分析

有關更詳細的覆蓋率報告,請使用 -coverprofile 標誌指定將包含覆蓋率設定檔的輸出檔。然後可以使用 go tool cover 指令分析此設定檔。

go test -coverprofile=coverage.out
go tool cover -html=coverage.out
登入後複製

-html 標誌產生一個 HTML 報告,提供覆蓋範圍的可視化表示,突出顯示未覆蓋的行。

黑盒測試

測量黑盒測試的覆蓋率(無法訪問內部狀態的測試)包),使用 -coverpkg 標誌。此標誌指定應偵測覆蓋率的包。

go test -coverprofile=.coverage.html -coverpkg=your/pkg your/pkg/pkg_test
登入後複製

最近的增強

在 Go 1.20 中,整合測試現在可以包含在覆蓋率分析中。 go build -cover 指令可用於建構覆蓋率偵測的二進位。然後可以在整合測試中使用這些二進位檔案來擴展覆蓋測試的範圍。

以上是如何衡量 Go 中的測試覆蓋率?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板