首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jacoco将coverage.ec转换为没有coverage.em的报表

Jacoco将coverage.ec转换为没有coverage.em的报表
EN

Stack Overflow用户
提问于 2015-03-13 18:45:59
回答 4查看 10.4K关注 0票数 4

我能够通过以下步骤获得代码覆盖率报告,

  1. 在所需的构建类型上启用覆盖率(例如调试) buildTypes { debug { testCoverageEnabled true } }
  2. 应用Jacoco插件和设置版本 apply plugin: 'jacoco' jacoco { version "0.7.1.201405082137" }
  3. ./gradlew createDebugCoverageReport
  4. connectedAndroidTest中的所有测试都将运行,并在此基础上生成覆盖报告。我可以在 app/build/outputs/reports/coverage/{buildType}/index.html

中的coverage.ec文件

app/build/outputs/code-coverage/connected/coverage.ec

但是没有jacoco.exec,因为我运行的是安卓测试用例,而不是Robolec计量测试用例。

当我按照下面的方式运行亚行的工具(我猜它仍然在使用艾玛)时,我得到了一个coverage.ec文件,如下所示,

代码语言:javascript
复制
$ adb shell am instrument -w -e coverage true -e coverageFile /sdcard/coverage.ec com.sample.helloworld.test/.Runner
....
OK (4 tests)

Generated code coverage data to /sdcard/coverage.ec

但我无法将coverage.ec转换为使用艾玛报告,因为coverage.em文件丢失了,

代码语言:javascript
复制
java -cp ~/adt-bundle-mac-x86_64-20130729/sdk/tools/lib/emma_device.jar emma report -r html -in \
coverage.em,myFile.ec,myapp_coverage1.ec -sp /path/to/myapp/src

有办法解决这个问题吗?

EN

回答 4

Stack Overflow用户

发布于 2015-09-29 19:14:32

只需使用"coverage.ec“作为".exec”文件,我就可以使用它了

这就是Google在Android插件源代码中所做的。

公共静态最终字符串FILE_COVERAGE_EC = "coverage.ec";

在SimpleTestCallable.java下的com.android.builder.internal.testing包中。

票数 8
EN

Stack Overflow用户

发布于 2017-03-09 15:05:40

我写了一篇关于相同场景和解决方案的文章。你可以在这里读到。为了回答这个特定的问题,您应该执行以下步骤:将gradle更改为:

代码语言:javascript
复制
apply plugin: 'jacoco'
jacoco {
   toolVersion = '0.7.5.201505241946'
}

第二次下载这个罐子。继续你所做的事情,直到你有了coverage.ec文件。那么当你让它运行时:

代码语言:javascript
复制
java -jar android-jacoco-the-missing.jar -f /path/to/coverage.ec -p ./path/to/android/project

就这样!jar将生成一个包含代码覆盖的文件夹。

另一种选择是在Jenkins插件中使用coverage.ec。但为此你得让詹金斯接电话。

票数 4
EN

Stack Overflow用户

发布于 2019-03-11 06:34:00

要从coverage.ec文件中获取覆盖率,只需将其重命名为coverage.exec,并使用“显示覆盖率数据”选项打开它

显示覆盖率数据”可以在Android中的"Analyze“选项下找到。

用Android 3.3验证了这一点

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29039751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档