quabbinの日記: EclipseとカバレッジでEclEmma 2
本格的にTDDを開始すると、すぐにテストのカバレッジが気になるのは、私が細かいせいでしょうか。
そこでEclipse上でカバレッジを確認できるもと考えてdjUnitや本家TPTPなどを検討してみたのですが、どうも分かりにくい。
他にないかと検索したところ、EclEmmaでソースのカバレッジを確認してみるというエントリーを発見。
早速試してみました。
結果はそのblogにある通り、行単位にカバー具合を表示してくれました。
テストで実行された場所は緑色に、実行されていない部分は赤色になり、条件分岐やfinallyなどの複数条件で実行されなければならない場所で十分に条件が満たされていないところは黄色となり、なかなか好調。
ただ、これってtestコードまで色が付いてしまうのですよね。って、実際に正しくテストコードが動いているかどうかというのも重要な視点だから、それで正しいのか。
ついでに、例外が発生するかどうかのテストにおいては、少し挙動がおかしい模様。
import junit.framework.TestCase;
public class SampleTest extends TestCase {
private void doException(boolean exeption) {
if (exeption) {
throw new RuntimeException();
}
}
public void testMethod() {
boolean b = true; // => ここが赤くなる
try {
doException(b); // => ここが赤くなる
fail("fail!!");
} catch (RuntimeException e) {
assertTrue(true);
}
}
}
…こんなところに書くより、BTSに報告したほうがよさそうですね。
23:13追記
ということで、報告してみました
さて、この壊れた英語が通用するだろうか。
09/01/28追記
2008/04/03に返答が着ました。
その質問はFAQであり、仕組み上難しいとのこと。
対応は難しいようです。
EMMAの問題 (スコア:1)
Re:EMMAの問題 (スコア:1)
返答が遅れましてすいません。
同じ答えが既に返ってきていましたが、分かりやすいリンクをし忘れておりました。
本文側を訂正しましたので、参考ください。
ご指摘、ありがとうございました。