Go テストを作成するとき、デバッグ目的でステートメントを出力したい場合があります。ただし、通常のプログラムとは異なり、テスト内の出力は画面に直接表示されません。
テスト パッケージには、T.Log と T.Log が提供されます。 .Logf メソッド。それぞれ fmt.Print および fmt.Printf と同等です。これらのメソッドはログを特定のバッファに送ります。テストの実行時に -v (詳細) フラグを使用してアクセスできます。
func TestPrintSomething(t *testing.T) { t.Log("Say hi") }
go test -v で実行すると、次のようになります。テストは次の出力を行います:
=== RUN TestPrintSomething Say hi --- PASS: TestPrintSomething (0.00s)
while fmt.Printステートメントはコンソールに直接表示され、T.Log および T.Logf ログはバッファリングされます。これは、次のことを意味します。
Go テストでステートメントを出力するには、 testing.T.Log または testing.T.Logf を使用します。 fmt.Print の代わりに。これにより、ログが正しいバッファに転送され、適切に表示されるようになります。
以上がロギングを使用して Go テストを効果的にデバッグするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。