首頁 >後端開發 >Golang >如何在整合測試期間捕捉 Go 程式碼覆蓋率?

如何在整合測試期間捕捉 Go 程式碼覆蓋率?

DDD
DDD原創
2024-11-01 22:26:29529瀏覽

How Can I Capture Go Code Coverage During Integration Testing?

在整合測試期間捕獲Go 二進位檔案的程式碼覆蓋率

在Go 中,在單元測試期間收集程式碼覆蓋率非常簡單。然而,在針對二進位檔案本身運行的整合測試期間捕獲覆蓋率數據也是可取的。

可以完成嗎?

是的,可以測量程式碼覆蓋率涉及 Go 二進位檔案的整合測試。然而,標準的 Go 覆蓋工具只能與測試包結合使用。

解決方案:利用測試框架

要彌補這一差距,請將整合測試強製到Go 測試框架。這需要:

  1. 建立一個測試文件,在go 例程中呼叫main() 函數:

    func TestMainApp(t *testing.T) {
     go main()
     // .. then start your integration tests
    }
  2. 從運行中啟動集成測試應用程式使用exec.Cmd。
  3. 照常收集覆蓋率統計資料。

其他參考

詳細實作請參閱文章「透過外部測試進行覆蓋」採用類似的方法。

以上是如何在整合測試期間捕捉 Go 程式碼覆蓋率?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn