web-dev-qa-db-ja.com

Android Studioを使用してコードカバレッジを取得する方法は?

Android Studioを使用してアプリを開発しています。
テストコードを実行できました。
しかし、Android studio。でコードカバレッジを取得する方法がわかりません。

私はすでに以下のリンクを見ました。
Android Gradle Code Coverage
しかし、エマをサポートするv0.6への更新を待つことはできません。

プロジェクトの構成は次のとおりです。

メインコード
MyProject/AppName/src/main/Java/mypackage/MyClass.Java

テストコード
MyProject/AppName/src/instrumentTest/Java/mypackage/test/MyClassTest.Java

プロジェクト構成
私のプロジェクト
├─build.gradle
└─AppName
├─build.gradle
└─src
├─メイン
│├─Java
││└─mypackage
││└─MyClass.Java
│├─res
│└─AndroidManifest.xml
└─instrumentTest
└─Java
└─mypackage
└─テスト
└─MyClassTest.Java

63
h.usune

新しいAndroid Studio 1.2を使用すると、ユニットテストを実行し、IDE内のカバレッジをすべて確認できます。

最初に、IDEで単体テストを実行する必要があります。 (既に可能な場合は、この手順をスキップしてください)

この ガイド および デモ が役立ちます。

次に、JUnit Run構成を作成する必要があります

enter image description here

この構成内では、選択することができます

  • テストの種類: "All in Package"
  • Package:[テストが存在するパッケージ。例: "com.myapp.tests"]
  • テストの検索:Across Module Dependencies(あなたの設定では差分になる可能性があります)
  • VM -options:-ea
  • 作業ディレクトリ:[プロジェクトのディレクトリ]
  • mod:のクラスパスを使用[モジュールを選択]

JUnit実行構成の作成に問題がある場合は、 this ガイドを参照してください。

最後に、最新のAndroid Studioでは、[カバレッジ付きで実行]ボタンをクリックしてJUnit-Run構成を実行できるはずです。


Android Studio 2.1.3はラベルRun Unit tests with Coverage どこ Unit testは、次のスクリーンショットに示すテスト構成の名前です。

Android Studio: "Run Unit tests with Coverage" button

59
Caleb

jacocoプラグインをAndroid studioプロジェクトに適用する方法は古く、最近の解決策を見つけるのに多くの時間を無駄にしましたAndroid studio(My Android Studioはバージョン2.1.2)。

  • JacocoプラグインはAndroid Studio gradleに組み込まれています。次のように有効化するだけです。
 buildTypes {
 ... 
 debug {
 testCoverageEnabled true 
} 
} 
  • 上記を実行した後、単体テストタスク./gradlew testDebugUnitTestを実行します

  • 次に、カバレッジファイルを作成します:./gradlew createDebugCoverageReport

  • カバレッジファイルは、<module>/build/reports/coverage/debugフォルダーの下に作成されます。ブラウザーで開くことができるindex.htmlと、report.xmlまたはその他のレポートを取得するために使用できるjenkins jacoco plugin統合ツールを継続します。

jenkins jacoco plugin0%のカバレッジを取得した場合は、必ず正しいバージョンを使用してください。 彼らのサイト からの引用:

残念ながら、JaCoCo 0.7.5は、jacoco.execファイルの以前のバイナリ形式との互換性を壊します。バージョン1.0.19までのJaCoCoプラグインはJaCoCo 0.7.4に基づいているため、すでにJaCoCo 0.7.5以降を使用しているプロジェクトではこのバージョンを使用できません。バージョン2.0.0以降のJaCoCoプラグインはJaCoCo 0.7.5を使用するため、このバージョンもプロジェクトで使用する必要があります。まだJaCoCo 0.7.4以下を使用している場合は、JaCoCoプラグイン1.0.19以下を使用してください。

29
xfdai

Mavenを使用してアプリを構築し、コードカバレッジレポート用のcoberturaを使用します

どちらも簡単に統合できます

Android Mavenの統合:

http://www.vogella.com/tutorials/AndroidBuildMaven/article.html

Maven + Coberturaコードカバレッジの例:

http://www.mkyong.com/qa/maven-cobertura-code-coverage-example/

2
ir2pid

プロジェクトのコードカバレッジを取得するためにJacocoプラグインを使用してみましたか?パッケージまたは個々のクラスに基づいてカバレッジを提供する優れたプラグインです。私はMavenを使用しているため、Gradleで使用するためにJacocoをどのように設定するのかわかりません。 リンクをチェック :そしてそれがあなたを助けるかどうか確かめてください

2
user2511882

Android Studio。内部で視覚的なコードカバレッジレポートを見ることができるとは思いません。しかし、Jacocoを試すことができます。build.gradleファイルに統合する必要があります。 同様の質問と解決策はこちら を見つけることができます

2
Hieu Rocker

Android Studio gradleにはJacocoプラグインが組み込まれており、これを使用してコードカバレッジを見つけることができます。 Espressoテストケースのコードカバレッジを見つけるために、jaococoを段階的に構成する記事として書きましたが、Robotiumでも使用できます。これをチェックしてください。

http://qaautomated.blogspot.in/2016/03/how-to-find-code-coverage-with-jacoco.html

2
anuja jain