JavaのEclipseでカバレッジを取得するサンプルです。
確認環境 (Eclipse4.8、Java 10、junit-4.12、EclEmma 3.1.1)
目次 | カバレッジとは |
カバレッジで使用するサンプルコード | |
カバレッジを取得する | |
カバレッジのレポートを出力する | |
カバレッジの色を消す |
カバレッジとは
カバレッジとは、テストコードがコードをどれくらい網羅しているか表します。
100%であればすべてのコードを網羅していることになります。
Eclipse Photon(4.8)であれば、カバレッジのプラグインである「EclEmma3.1.1」は既にインストールされています。
以下は、EclEmmaのドキュメントのリンクです。
https://www.eclemma.org/index.html
カバレッジで使用するサンプルコード
以下はテスト対象のクラスです。
package test1;
class Color1 {
String getColor(int i) {
if (i == 1) {
return "赤";
} else if (i == 2) {
return "青";
} else {
return "1or2を入力して下さい";
}
}
}
以下は、テストクラスです。
package test1;
import static org.junit.Assert.*;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.*;
public class Color1Test {
@Test
public void testGetColor1() {
Color1 c1 = new Color1();
String t1 = c1.getColor(1);
assertThat(t1,is("赤"));
}
@Test
public void testGetColor3() {
Color1 c1 = new Color1();
String t1 = c1.getColor(3);
assertThat(t1,is("1or2を入力して下さい"));
}
}
JUnitのテスト環境の作成は以下を参照願います。
Java JUnit4の使い方とテストのサンプル
カバレッジを取得する
1.テストクラスを右クリックします。
2.「カバレッジ」→「JUnitテスト」をクリックします。
3.テストとカバレッジが実行されます。
Color1.java(赤線)のカバレッジが86.7%になっています。
合計命令数が15に対してカバー命令が13なので未実施のものがあることがわかります。
4.テスト対象のコードに色付けがされています。
緑は、完了しています。
黄は、一部完了ですが未実施のものもあります。
赤は、未実施です。
https://www.eclemma.org/userdoc/annotations.html
5.テストコードを修正して全て網羅するようにすると以下のように100%になります。
カバレッジのレポートを出力する
カバレッジのレポートを出力する方法です。
1.カバレッジの欄で右クリックし、「セッションのエクスポート」をクリックします。
2.出力するセッションを選択し、書式と宛先を選択して完了を押します。
3.エクスポートの書式は、以下のものが選択できます。
4.出力されたフォルダのindex.htmlをブラウザで開きます。
5.カバレッジのレポートをHTML形式で確認することができます。
カバレッジの色を消す
カバレッジの表のバツのアイコンをクリックすると色が消えます。
関連の記事
Java JUnit4の使い方とテストのサンプル
Java assertThatメソッドのサンプル
Java JMockitを使用するサンプル