Eclipseのコードカバレッジ機能とは?テストがちゃんとできているかを可視化しよう!

こんにちは。ゆうせいです。
今回は、Eclipseを使っている新人エンジニアに向けて、コードカバレッジ(Code Coverage)という機能をわかりやすく解説します。
「テストは書いたけど、全部のコードがちゃんと実行されたのかな?」
そんな疑問を数字や色でハッキリ答えてくれるのがコードカバレッジの機能なんです。
コードカバレッジとは?
コードカバレッジとは、テストがソースコードのどこまで実行されたかを示す指標のことです。
- どの行がテストで実行されたか?
- どのif文やループが通ったか?
- 実行されなかった死んでいるコードはどこ?
これらを色分け(緑・黄色・赤)や数値で表示して、テストの網羅性を測ります。
例えるなら、掃除をした後に「どこを拭いたかをライトで照らして確認する」ようなイメージですね!
Eclipseでコードカバレッジを使うには?
Eclipse単体ではこの機能はありませんが、通常は以下のプラグインを使います。
使われるプラグイン:EclEmma(エクレマ)
- Eclipseの有名なコードカバレッジツール
- インストールすると
Run with Coverage
ボタンが追加される - JUnitなどのテストと組み合わせて利用
セットアップ手順(EclEmmaの導入)
- Eclipseの[ヘルプ] → [新規ソフトウェアのインストール] を選択
- 以下のURLを追加:
http://update.eclemma.org/
- 「EclEmma Java Code Coverage」を選択してインストール
- Eclipseを再起動すると、ツールバーに「Coverage」アイコンが出現!
コードカバレッジの使い方ステップ
ステップ1:JUnitテストを書く
@Test
public void testAdd() {
Calculator calc = new Calculator();
assertEquals(5, calc.add(2, 3));
}
ステップ2:「Run with Coverage」で実行
- テストクラスを右クリック → 「Coverage As」→「JUnit Test」
- 実行が終わると、コードに色付きのカバレッジ結果が表示されます!
色の意味(EclEmmaのカバレッジ表示)
色 | 意味 | 状況 |
---|---|---|
緑(Green) | 実行されたコード | テストで通った! |
赤(Red) | 実行されなかったコード | テスト漏れあり! |
黄色(Yellow) | 部分的に通ったコード | 条件式の一部だけ実行 |
たとえば、
if (x > 0)
でx = 1
のテストしかなければ、false
のパターンがカバーされず「黄色」になります。
カバレッジ率とは?
カバレッジには主に以下の3種類の指標があります。
種類 | 内容 | 数式(記号で) | 数式(日本語) |
---|---|---|---|
行カバレッジ | 実行された行の割合 | 実行済み行 ÷ 全行 | 実行された行数 ÷ 全コード行数 |
命令カバレッジ | JVM命令単位の割合 | 実行済み命令 ÷ 全命令 | 実行された命令数 ÷ 全命令数 |
分岐カバレッジ | 条件文の全パターンの割合 | 通過済み分岐 ÷ 全分岐 | if文などのtrue/falseパターンの網羅率 |
コードカバレッジを活用するメリット
メリット | 内容 |
---|---|
テストの抜けを見つけやすい | 実行されていない箇所が赤で一目瞭然 |
不要なコードの発見 | テストされていない=使われていないかも |
品質向上 | テストの信頼性が上がる |
保守性向上 | 他人のコードでもカバレッジで理解しやすくなる |
注意点と限界
注意点 | 内容 |
---|---|
緑色だからといって安心できない | テストの中身が不十分なこともある |
カバレッジ100%でもバグはある | 網羅と品質はイコールではない |
無理に100%を目指すと非効率 | 重要なロジックを優先してカバーするのが現実的 |
今後の学習のすすめ方
- まずはEclEmmaを導入して、JUnitと一緒に使ってみる
- 赤や黄色のコードを探し、どんなパターンが漏れているか考える
- カバレッジ率だけでなく、テスト内容の質にも注目する
コードカバレッジは、「ちゃんと動くか」だけでなく「ちゃんと守れているか」をチェックする安全装置のようなもの。
新人エンジニアのうちから使い慣れておけば、将来のテスト設計やコードレビューの場面で大きな武器になりますよ!
セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク
投稿者プロフィール

- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
山崎講師2025年4月30日【初心者向け】Javaで「イミュータブルクラス」を作る方法をやさしく解説!
山崎講師2025年4月30日Eclipseのコードカバレッジ機能とは?テストがちゃんとできているかを可視化しよう!
山崎講師2025年4月30日Eclipseの警告一覧を完全解説!初心者でもわかる対応と設定方法
山崎講師2025年4月30日Eclipseの「ヒント」機能とは?コードの改善を提案してくれる心強い味方!