• ベストアンサー

テスト機能ごとにする理由は

お疲れ様です。 テスト機能ごとにする理由はなんでしょうか。。 メソッドごとではなく。。 1個のメソッドでif分岐があったら2個のtestメソッドで 別々にテストする方法がいいと言われましたが、本当ですか。。 僕はメソッドごとでもいいじゃないかなと思いますが。。

質問者が選んだベストアンサー

  • ベストアンサー
  • OKapple
  • ベストアンサー率56% (17/30)
回答No.1

例えば以下のソースをテストするとします。 if(条件A){ 処理a } この処理をテストする場合、何に着眼しなくてはいけないかというと、以下の3つになります。 1.条件Aの場合、処理aに分岐が移行する。 2.条件Aではない場合、処理aが実行されない。 3.処理aの内容が適切である。 1回のテストメソッドでは、上の項目1.と3.は確認できても、2.が確認できません。 もしここで、条件Aの判断にバグがあっても、これだけでは判りませんよね。 条件A自体も仕様ですし、条件Aの判断も機能の一つです。 条件分岐の妥当性を明らかにするためにも、2回のテストは必須になります。 テストメソッドを書くのを面倒に感じていらっしゃるようですが、これをすることは、安心してメソッドの再利用が出来ることの裏返しなのです。 後々に楽をするための苦労ですので、頑張ってください。

関連するQ&A