EclipseにEclEmmaを入れてカバレッジを見ながらテストケースを検討する
私がやってるテストの流れをざっとまとめると流れは下記になります。
1.INとOUTの仕様を決めてテストを書く。(ブラックボックステスト)
2.コードを書く。
3.テストでチェックする。
4.カバレッジを見てテストされてないコードが無いかを確認する。
テストされてないコードがある場合はINのパターンが少ない。
もしくはException等が起こるパターンが考慮されてない
テストだと考えます。
5.コードの中身からテストケースを検討して、書き足りないテストを書く。
(ホワイトボックステスト)
6.テストでチェックする。
上記の流れを行なう際に作業を助けてくれるのがコードの
カバレッジを見せてくれるツールになります。
EclEmmaはEclipse上でそれを実現してくれます。
EclEmma: http://www.eclemma.org/
EclipseのEclEmmaアップデートサイト: http://update.eclemma.org/
EclipseにEclEmmaをインストールすると下記のようなボタンが現れます。
このボタンからテストを実行するとテストが通ってない行を赤くハイライト、
一部しか通っていない部分を黄色くハイライトします。
これでテストされてない行が明確になりますね!
ただし、テストが全ての行を通ってコードのカバレッジが100%だから、
もうテストしなくて良いと考えるのは危険です。
きちんとテストしなければいけない項目を網羅しているか?の方が重要ですので
テストケースを練って漏れがなくした上でカバレッジが100%であるという考えを
持った方が良いと思います。
あくまでカバレッジは指標でしかありません。その指標を有効活用して
本質的に必要なテストケースを考えてテストして行く事が重要になります。
カバレッジツールはそれを助けてくれます。便利ですね!