白眼鏡のblog

新しく得た知見を備忘録的に書き連ねていく

Android local unit test についてのメモ

Android local unit test coverage report 出力方法

AndroidのUnit Testのカバレッジレポートを出力させようとしたところ、少し詰まってしまったので解決方法をメモしておく。

カバレッジレポート出力に必要な設定

Android StudioのRun/Debug Configurationsを開き、Android Junit -> project -> Code Coverageのメニューから以下の設定を行う。 f:id:wadada420:20190127221653p:plain

  • coverage runnerの選択
    IntelliJ標準の物かJacocoを使用するか選択できる。
    kotlinを対象とする場合、Jacocoではカバレッジ取得対象に含まれないため注意が必要。 (Jacoco使えるよってことであれば教えていただきたいです。)

  • 対象パッケージの選択
    f:id:wadada420:20190127221805p:plain
    画面中央付近にある画像のアイコンをクリックし、テスト対象となるパッケージ、クラスを選択する。 間違えて追加してしまった場合は、隣にある"-"アイコンから削除することができる。

  • テストフォルダでのカバレッジ取得の許可
    画面中央付近にあるEnable coverage in test folderのチェックボックスにチェックを入れる。
    これが許可されていない場合、対象がないよと言われカバレッジレポートが出力されない。

カバレッジレポート出力方法

上記設定完了後、unit test のrootディレクトリを右クリックし表示されたメニュー内にある Run ’Test in 'project'' with Coverageを実行する。
実行後、右上に表示される結果画面にあるGenerate Coverage Reportを実行し、カバレッジレポートを取得する。