Kotlinのカバレッジ計測ツール入門|初心者向けJaCoCoの使い方をわかりやすく解説
生徒
「先生、Kotlinのテストってちゃんとやってるつもりなんですが、全部のコードをテストできてるのか不安です…」
先生
「それなら、カバレッジ計測ツールを使ってみましょう。コードがどこまでテストされているかを可視化できますよ。」
生徒
「へぇ~。カバレッジってなんですか?」
先生
「『どのくらいのコードがテストで実行されたか』をパーセンテージで見られる指標のことです。では、Kotlinで使えるカバレッジツールJaCoCoの基本から学んでいきましょう!」
1. カバレッジとは?テストの見える化をしよう
カバレッジ(Coverage)とは、Kotlinのプログラムの中で、テストによってどれだけのコードが実行されたかを表す指標です。
たとえば100行のコードがあって、そのうち60行だけがテストによって実行されたなら、カバレッジは60%になります。
この数値を確認することで、テストが不十分な箇所を見つけやすくなり、バグを防ぐことにつながります。
2. JaCoCoとは?Kotlinでも使えるカバレッジ測定ツール
JaCoCo(ジャココ)は、JavaやKotlinで書かれたコードのカバレッジを自動で測定してくれるツールです。
無料で使える上、Gradleと簡単に連携できるため、Kotlinのプロジェクトでもよく使われています。
3. GradleにJaCoCoを設定する方法
KotlinのプロジェクトでJaCoCoを使うには、build.gradle.ktsに以下のような設定を追加します。
plugins {
kotlin("jvm") version "1.9.0"
jacoco
}
jacoco {
toolVersion = "0.8.10"
}
jacocoプラグインを有効にすることで、Kotlinのビルドに自動でカバレッジ計測が組み込まれます。
4. JaCoCoでカバレッジを出力する方法
カバレッジのレポートを出力するには、Gradleで次のコマンドを実行します。
./gradlew test jacocoTestReport
このコマンドを実行すると、Kotlinのテストが実行されたあとに、HTML形式のカバレッジレポートが自動で作成されます。
5. カバレッジレポートの見方
レポートは通常、以下の場所にHTMLファイルとして保存されます。
build/reports/jacoco/test/html/index.html
このHTMLファイルをブラウザで開くと、各クラスや関数がどれくらいテストでカバーされているかが色分けされて表示されます。
- 緑色:テストで実行されたコード
- 赤色:テストされていないコード
6. 実際にテストを書いてカバレッジを確認してみよう
ここでは簡単なKotlin関数をテストし、その結果をJaCoCoで確認する例を紹介します。
class Calculator {
fun add(a: Int, b: Int): Int = a + b
fun subtract(a: Int, b: Int): Int = a - b
}
次に、この関数に対するテストを用意します。
import kotlin.test.Test
import kotlin.test.assertEquals
class CalculatorTest {
private val calculator = Calculator()
@Test
fun testAdd() {
assertEquals(5, calculator.add(2, 3))
}
}
上記のテストではadd関数だけが実行されるため、subtract関数の部分は赤く表示されます。
7. カバレッジを上げるにはどうすればいい?
カバレッジを100%に近づけるためには、すべての関数・条件分岐に対してテストを書く必要があります。
ただし、100%を目指しすぎて無理やりなテストを書くと逆効果になることもあります。
ポイントは、重要な処理・バグが起きやすい部分をしっかりとテストすることです。
Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。
基礎からわかるKotlinをAmazonで見る※ Amazon広告リンク
8. Kotlin初心者がJaCoCoを使うメリット
JaCoCoを使うと、自分の書いたテストがどのくらいコードをカバーしているのかを数字と色でわかりやすく確認できます。
まだテストに慣れていないKotlin初心者にとっても、「どこをテストすればいいか」が視覚的にわかるので、学習にも最適なツールです。
JaCoCoを導入するだけで、Kotlinのテストの質がグッと上がりますよ。
【未経験OK】Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験する60分
「プログラミングを始めたい」を形にする。最新言語Kotlinで楽しむ、ものづくりの第一歩。
本講座は、プログラミング経験が全くない方のためのエントリー講座です。「コードを書くってどういうこと?」という基本から、世界中で使われている最新言語Kotlin(コトリン)を使って、実際にプログラムを動かすまでを体験します。難しい理屈よりも、まずは「自分の手で動かす楽しさ」を最短距離で実感していただきます。
具体的な体験内容と環境
【つくるもの】
簡単な言葉を入力すると自動で返答してくれる「対話型ミニプログラム」や、計算を自動化する「便利ツール」をゼロから作成します。黒い画面に自分の書いた文字が表示される瞬間は、最高の感動体験です。
【開発環境】
プロのエンジニアが実際に使っている開発ツールIntelliJ IDEA(インテリジェイ)をインストールします。ボタン一つで日本語化し、初心者でも迷わず操作できる「魔法の設定」を一緒に行います。
この60分で得られる3つの体験
プロと同じ道具を揃えることで、明日から一人でもプログラミングを続けられる環境が整います。
「変数」や「型」といった難しい言葉も、身近な例え話で解説。モヤモヤをゼロにします。
Kotlinは英語に近くて読みやすいのが特徴。自分でコードを読んで、間違いを見つけるコツも伝授します。
※本講座は、パソコン操作が不安な方でも安心して受講いただける完全マンツーマンです。あなたのペースに合わせて、一つずつ丁寧に進めていきます。
Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験