首頁 >後端開發 >Golang >當測試函數存在時,為什麼 `go test` 顯示「No Tests to Run」?

當測試函數存在時,為什麼 `go test` 顯示「No Tests to Run」?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-10 05:02:10677瀏覽

Why Does `go test` Show

Go Test 顯示“沒有要運行的測試”,儘管有測試函數

在Go 中,go test 命令在提供的中搜尋測試函數包來執行。這些函數必須遵守特定的命名約定才能被辨識。

問題描述

使用者在執行 go test 時遇到「沒有要執行的測試」錯誤訊息main_test.go檔案包含以下測試function:

func testNormalizePhoneNum(t *testing.T) {
    // Test cases
}

解決方法

此錯誤源自於測試函數的命名約定不正確。根據文檔,測試函數必須以大寫“T”開頭才能被識別。將函數重新命名為 TestNormalizePhoneNum 可以解決該問題。

替代解決方案

或者,使用者可以強制測試函數運行,即使它不遵守命名規則使用 -run 標誌進行約定:

go test -run=testNormalizePhoneNum

以上是當測試函數存在時,為什麼 `go test` 顯示「No Tests to Run」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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