ユニットテストのエラーメッセージに何を書いていますか?


ユニットテストを書く際に、
テスト失敗時のエラーメッセージとしてどのようなものを書いていますか?

以下は、Pythonの場合ですが、
例えば
assertEqual(1, 2, 'Test result is different from expected a both parameter is not equal.')
のように詳細に書こうとすると、コーディング規約の文字数制限にひっかかりがちです。

とは言っても、以下のように複数行に分けて書くのも仰々しいなとも思ってしまいます。
msg = 'Test result is different from expected a both parameter is not equal.\n' \
'Please check the "1" or "2".'
self.assertEqual(1, 2, msg)

ただ、
self.assertEqual(1, 2, 'both parameter is not equal.)
のように短くすることを重視すると、伝えられる情報がかなり減ります。

結果、どうせコードを見ることになるだろうから、
エラーメッセージなんていらないんじゃないか…
みたいな考えにもなってしまいます…

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:
  • 終了:2020/04/12 14:35:06

ベストアンサー

id:kitaindia00 No.1

回答回数1ベストアンサー獲得回数1

> テスト失敗時のエラーメッセージとしてどのようなものを書いていますか?

基本的に、テストが落ちたときのエラー文で把握できるので自分は書いてないです。

例で書かれている

> assertEqual(1, 2, 'Test result is different from expected a both parameter is not equal.')

ですが、assertEqualが失敗した(expectedとactualが正しくなかった)ということ以上の情報は無いので無理して書く必要ないと思います。

もし気になるなら、Pythonの有名なライブラリやフレームワークのテストを漁ってみると良いと思います。
(軽くdjangoやrequestのテストコードを軽く見てみましたが、メッセージは書かれてないように見えました)

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません