1. ホーム
  2. unit-testing

[解決済み】Unit Testsの一般的な命名規則にはどのようなものがありますか?[クローズド]。

2022-04-11 17:29:09

質問

一般

  • すべてのテストにおいて同じ基準に従うこと。
  • 各テスト状態が何であるかを明確にすること。
  • 期待される動作を具体的に記述する。

使用例

1) MethodName_StateUnderTest_ExpectedBehavior(メソッド名_テスト中状態_期待される動作

Public void Sum_NegativeNumberAs1stParam_ExceptionThrown() 

Public void Sum_NegativeNumberAs2ndParam_ExceptionThrown () 

Public void Sum_simpleValues_Calculated ()

出典 ユニットテストの命名基準

2) アンダースコアで単語を区切る

Public void Sum_Negative_Number_As_1st_Param_Exception_Thrown() 

Public void Sum_Negative_Number_As_2nd_Param_Exception_Thrown () 

Public void Sum_Simple_Values_Calculated ()

その他

  • メソッド名の末尾に テスト
  • クラス名でメソッド名を開始する

解決方法は?

この件に関しては、あなたとほぼ同意見です。あなたが使っている命名規則は

  • 各テスト状態が何であるかが明確であること。
  • 期待される動作が具体的である。

これ以上、テスト名に何を求めるのですか?

とは逆に レイの答え はないと思います。 テスト の接頭辞は必要です。これはテストコードであることは分かっています。もし、コードを識別するためにこのようなことが必要なのであれば、もっと大きな問題があります。 テストコードを本番コードと混在させてはいけません。

長さとアンダースコアの使用については、その テストコード 誰がそんなこと気にするんだ?あなたとあなたのチームだけが見るのですから、それが読みやすく、テストが何を行っているかが明確である限り、続けてください。:)

とはいえ、私はまだテストの経験が浅いので ブログで冒険しています :)