1

エミュレーターで生成された apk ファイルを実行ant clean emma debugしてインストールした後、次のコマンドを実行して単体テストを実行しています。

adb shell am instrument -w -e package org.company.projectname.test.unit -e coverage true \
-e coverageFile ProjectNameTest/bin/coverage.xml org.company.projectname.tests/com.neenbedankt.android.test.InstrumentationTestRunner'

私が使用している InstrumentationTestRunner は のサブクラスですandroid.test.InstrumentationTestRunner

このコマンドを実行すると、すべてのテストに合格しますが、カバレッジが生成されず、次のエラーが発生します。 Error: Failed to generate emma coverage. Is emma jar on classpath?

を使用するソリューションを探しているわけではありませんが、そのソリューションが私がそれを使用しない理由に対処できる場合を除きます。つまり、テストするパッケージ (この場合はパッケージ)ant testを指定できるようにしたかったからです。org.company.projectname.testunit

4

2 に答える 2

1

これは私のために働いた:

ant instrument
ant emma installi test

編集: Ant を使用したくない場合は、インストルメント化された apk を手動でビルドする必要があります。詳細については $ANDROID_HOME/tools/ant/build.xml を確認し、emma.jar がテスト プロジェクトの libs の下にあることを確認してください。

于 2013-09-19T04:41:59.980 に答える
0

試してください:ant all clean emma debug install test

また、 http://code.google.com/p/android/issues/detail?id=21640を確認してください。この問題は最新のコミットで修正されているようです

于 2013-07-10T17:48:06.440 に答える