使用「testing」套件在Go 測試中列印
想像一下,您正在對失敗的測試進行故障排除,並希望添加列印語句進行偵錯,但是當您執行測試時沒有顯示任何東西。這是為什麼?
在 Go 中,內建的 fmt.Println() 語句在測試中無法如預期運作。相反,“testing”包提供了印刷的替代方法。
結構體testing.T和testing.B具有.Log和.Logf方法,提供與fmt.Print和fmt.Printf類似的功能。這些方法可讓您在測試中列印語句。
範例:
func TestPrintSomething(t *testing.T) { t.Log("Say hi") }
但是,即使使用這些方法,輸出也可能不會立即可見。要查看日誌訊息,您需要在執行測試時提供-v 標誌(用於詳細程度):
go test -v
使用-v 標誌,日誌訊息將與測試結果一起列印,給出您需要的調試資訊。
以上是為什麼 `fmt.Println()` 在 Go 測試中不起作用,如何列印偵錯資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!