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中文網其他相關文章!