TeamCity On-Premises 2026.2 Help

JaCoCo

TeamCity は、幅広いカバレッジメトリクスとコードの複雑度を測定できる Java コードカバレッジツール JaCoCo をサポートしています。

JaCoCo は、次のビルドランナーで使用できます: AntIntelliJ IDEA プロジェクトGradle 、および Maven

JaCoco カバレッジの有効化

TeamCity は Java エージェントカバレッジモードをサポートしており、ビルドスクリプトやバイナリを変更せずにカバレッジを収集できます。 追加のビルドステップは必要ありません — テストを実行するビルドステップで JaCoCo カバレッジを選択するだけです。

  1. コードカバレッジ セクションで、 カバレッジランナーを選択 ドロップダウンメニューのカバレッジツールとして JaCoCo を選択します。

  2. カバレッジオプションをセットアップします - 以下の利用可能なオプションの説明を参照してください。

オプション

説明

サンプル

クラスファイルのディレクトリまたは jar

分析するクラスファイルをスキャンするための チェックアウトディレクトリを基準とした +|-:[パス] 形式の改改行コードのパスパターンのセット。 ライブラリおよびテストクラスファイルは、それらのカバレッジが必要でない限り、リストする必要はありません。

+:target/main/java/**

楽器へのクラス

+|-:[パス] 形式のクラス名パターンの改改行コードセット。 "クラスファイルのディレクトリまたは jar " フィールドにリストされている不要なクラスを除外することを許可します。 テストクラスがコンパイルされている場合に便利です。

+:com.package.core.*

-:com.package.*Test*

コードカバレッジの結果は、 ビルド結果 ページの 概要 タブで表示できます; 詳細レポートは、専用の コードカバレッジ タブに表示されます。

JaCoCo カバレッジデータを TeamCity にインポートする

TeamCity は JaCoCo カバレッジデータを解析し、次の形式の サービスメッセージ を使用してレポートを生成できます:

##teamcity[jacocoReport dataPath='<path to jacoco.exec file>']

TeamCity はインポートされたデータの解析に、デフォルトの JaCoCo バージョンを使用します。 インポートされたカバレッジが異なるマイナーバージョン (X.X.X の 2 桁目) で生成されている場合、TeamCity はそのクラスファイルを処理してカバレッジを収集できないことに注意してください。 防ぐには、 管理 | ツール | JaCoCo カバレッジ で選択されているデフォルトバージョンが、インポートするカバレッジのツールバージョンに対応していることを確認してください。
または、必要なツールバージョンをサービスメッセージ本文で直接指定できます: ##teamcity[jacocoReport dataPath='coverage_data/jacoco.exec' includes='*' classpath='+:build/classes/java/main/**' toolVersion='X.X.X']。 指定したバージョンが TeamCity サーバーにインストールされていることを確認してください。

属性

説明

デフォルト値

サンプル

データ経路

jacoco データファイルを読み込むためのチェックアウトディレクトリからの相対パスで区切られたパスのセット

jacocoResults/jacoco.exec jacocoResults/anotherJacocoRun.exec

包含

スペース区切りのクラス名インクルードパターン

*

com.package.core.* com.package.api.*

除外

スペース区切りのクラス名除外パターンのセット

com.package.test.* .*Test

ソース

ソースを読み取るためのチェックアウトディレクトリからの相対パスで区切られたパスのセット。 デフォルトでリストされる必要はありません。

ソース

クラスパス

分析対象のクラスファイルをスキャンするための、 +|-:[パス] 形式のスペース区切りのパスパターンのセット。 ライブラリとテストクラスファイルは、それらのカバレッジが望まれない限り、リストされる必要はありません。

+:**/*

+:target/main/java/**

reportDir

一時ファイルを保存するディレクトリへのパス。 レポートは、このディレクトリにカバレッジ .zip として生成されます。 同じ名前のディレクトリが存在しないことを確認してください。

エージェントの一時ディレクトリのランダムなディレクトリ

jacocoReport

完全なサービスメッセージの例:

##teamcity[jacocoReport dataPath='jacoco.exec' includes='com.package.core.*' classpath='classes/lib/some.jar' reportDir='temp/jacocoReport']
2026 年 9 月 11 日