当前位置: 首页 > 知识库问答 >
问题:

在带有Gradle的Android项目中使用JaCoCo

张兴旺
2023-03-14

我有一个与Gradle 5.1.1的android项目,我想使用JaCoCo来生成关于测试代码覆盖率的HTML报告。我试图遵循一些文章中的说明,但所有的尝试都导致了错误。

apply plugin: 'jacoco'
jacocoTestReport {
reports {
    html.enabled true
    xml.enabled false
    csv.enabled false
    html.destination file("${buildDir}/jacocoHtml")
}}
ERROR: Could not find method jacocoTestReport() for arguments [build_8kqk7qvpoocfxfydulk1p4m35$_run_closure3@1aba12a5] on project ':app' of type org.gradle.api.Project.
gradlew build jacocoTestReport

所以我的问题是:有没有办法用Gradle把Jacoco添加到Android项目中?我做错了什么?

共有1个答案

毛越
2023-03-14

可能只是缺少复制粘贴,但请确保将函数定义为gradle中的任务,即:task jacocoTestReport(类型:JacocoReport,Dependson:['test DebugunitTest']){

我关注这个博客,在我最初的项目中设置我的Jacoco实例,并发现它非常有帮助。https://engineering.rallyhealth.com/android/code-coverage/testing/2018/06/04/android-code-coverage.html

 类似资料:
  • 我有一个现有的Android项目,结构如下: 谢谢!

  • 我尝试使用gradle构建工具构建一个简单的android应用程序。但是我得到了这样的错误 方法无签名:org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile()适用于参数类型:(java.lang.String)值:[org.gradle.api.plugins: gradle and

  • 我试图让测试(junit和robolectric)在Android项目中工作,但完全卡住了。我的主要问题是,我用gradle发现的所有测试都以某种方式拉入了java插件,然后我得到了这个错误: 我目前看到的唯一出路是分裂成测试和应用程序项目--但我想避免这种情况。任何例子/提示将非常感谢! 在官方文档中没有提到单元测试--只提到仪器测试--但我希望单元测试能快速得到结果。

  • 我有一个Gradle项目,作为一个简单的示例,它看起来类似于以下内容: web项目是一个纯粹的Dropwizard应用程序,它只做声明一个配置和一个使用它的应用程序,以便服务器能够启动。 在我的路径中,我已经在文件中定义了我的子项目(在本例中为)。在我的中,我声明了一个依赖项。 我有一个任务和一个任务来运行/构建这个应用程序。 我可以构建fatJar,它包含了我所期望的所有类(根的依赖项、web的

  • MyApp和MyAppCore有自己的AppComponent,MyApp提供ViewModel工厂,MyAppCore提供数据库和网络访问工厂(下面的示例)。 我不确定如何链接AppComponent(或应用程序),以便在MyApp中提供数据库和网络访问。以下是我目前掌握的信息: MyAppCore模块 MyAppCore还具有名为的Room数据库实现和接口(我认为我不需要在这个问题中添加此代码

  • 我无法在Intellij Ultimate中同步我的新Android Gradle项目。 在“工具”下

  • 我想在intellij idea中创建一个简单的java servlet。 我看到了关于如何这样做的这一页,

  • 我已经将一些maven格式的二进制文件上传到jfrog artiFactory,但似乎无法在我的项目中解决它们。这就是我本质上正在做的事情, build.gradle(app) 实现 'io.sariska:sariska-media-transport:5.0.9' build.gradle(项目级别) 所有项目{apply plugin:'maven publish'存储库{google()j