【问题标题】:Android - generate coverage with emma (without ant)Android - 使用 emma 生成覆盖范围(没有 ant)
【发布时间】:2013-07-10 17:15:14
【问题描述】:

运行ant clean emma debug 并在我的模拟器上安装生成的apk 文件后,我正在运行以下命令来运行我的单元测试:

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.test 中指定一个包进行测试(在此以unit 包为例)。

【问题讨论】:

标签: android android-emulator adb code-coverage emma


【解决方案1】:

这对我有用:

ant instrument
ant emma installi test

编辑: 如果您不想使用 Ant,您必须手动构建检测的 apk,查看 $ANDROID_HOME/tools/ant/build.xml 了解更多信息,并确保 emma.jar 在您的测试项目的库下。

【讨论】:

    【解决方案2】:

    尝试: ant all clean emma debug install test

    还请检查http://code.google.com/p/android/issues/detail?id=21640,似乎这个问题已修复最新提交

    猜你喜欢
    • 1970-01-01
    • 2010-09-08
    • 1970-01-01
    • 1970-01-01
    • 2012-03-23
    • 2011-12-25
    • 1970-01-01
    • 2014-07-01
    • 2016-08-31
    相关资源
    最近更新 更多