「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Go テストでデバッグ メッセージを確実に出力するにはどうすればよいですか?

Go テストでデバッグ メッセージを確実に出力するにはどうすればよいですか?

2025 年 1 月 14 日に公開
ブラウズ:179

How Can I Reliably Print Debug Messages in Go Tests?

Go テストでメッセージを効果的に出力する方法

Go でのテスト中に、デバッグ目的でメッセージを出力すると便利な場合があります。ただし、fmt.Println を使用しても、常に期待どおりの出力が生成されるわけではありません。代わりに、次のメソッドは、テストを操作するときに、より信頼性の高い印刷オプションを提供します。

Testing.T および Testing.B ログ メソッド:

testing.T と testing の両方。 B 構造体は次のロギング メソッドを提供します:

  • .Log: 以下に似ています。 fmt.Print
  • .Logf: fmt.Printf

に似ています。これらのメソッドは、テストで使用するために特別に設計されており、印刷されたメッセージが適切に処理されることを保証します。 .

例:

func TestPrintSomething(t *testing.T) {
    t.Log("Say hi") // Prints "Say hi" using the .Log method
}

-v Flag を使用したテスト出力:

標準の fmt.X print ステートメントはテスト内で実際に機能します。ただし、出力はすぐに画面に表示されない場合があります。出力を確認するには、go test に「-v」 (冗長) フラグを渡す必要があります。

go test -v

「-v」フラグを使用すると、テストは次の内容を出力します。合格したテストと失敗したテストの両方のログ メッセージ。

注:

testing.T の .Error メソッドを使用して出力することもできます。メッセージ。ただし、これはエラーを報告することを目的としており、テストは失敗としてマークされます。 .Log メソッドは、テスト結果に影響を与えることなく、情報を印刷するためのよりクリーンでより適切なオプションを提供します。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3