首頁 > 後端開發 > Golang > 如何從 Go 測試覆蓋範圍中排除產生的檔案?

如何從 Go 測試覆蓋範圍中排除產生的檔案?

Mary-Kate Olsen
發布: 2024-12-12 12:11:11
原創
833 人瀏覽過

How to Exclude Generated Files from Go Test Coverage?

從Go 測試覆蓋範圍中排除產生的檔案

使用go test -coverprofile=cover.out 執行Go 套件測試時;,產生的檔案包含在覆蓋率計算中。要排除這些產生的文件,請考慮以下方法:

從覆蓋設定檔中剝離產生的程式碼

  1. 執行測試並使用go test 產生臨時覆蓋設定檔。 -coverprofile cover.out.tmp.
  2. 使用 grep 解析臨時配置文件,過濾掉包含“_ generated.go”的行,它代表生成的文件。
  3. 建立最終的覆蓋設定檔 cover.out通過重定向過濾後的輸出。使用指令 cat cover.out.tmp | grep -v "_ generated.go" > > cover.out.
  4. 使用工具 cover -func cover.out.

管道整合

取決於工具使用後,此過程可以輕鬆整合到您的建置/測試管道中。例如,如果使用 Make,您可以包含以下步驟:

test:
    go test -coverprofile cover.out.tmp .
    cat cover.out.tmp | grep -v "_generated.go" > cover.out
    tool cover -func cover.out
登入後複製

透過從覆蓋率計算中排除產生的文件,您可以獲得更準確的覆蓋率指標,重點關注您手動編寫的程式碼。

以上是如何從 Go 測試覆蓋範圍中排除產生的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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