首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gradle - Jacoco只执行单元测试而不抛出设备,没有找到异常。

Gradle - Jacoco只执行单元测试而不抛出设备,没有找到异常。
EN

Stack Overflow用户
提问于 2018-05-15 21:04:26
回答 1查看 1.6K关注 0票数 3

我试图只执行单元测试和基因测试报告,但是我总是看到一条失败的消息:

代码语言:javascript
复制
Execution failed for task ':App:connectedDebugAndroidTest'.
> com.android.builder.testing.api.DeviceException: No connected devices!

分级代码:

代码语言:javascript
复制
apply plugin: 'jacoco'

jacoco {
    toolVersion = "0.8.1"
}

task jacocoTestReport(type: JacocoReport, dependsOn: ['testTpsDebugUnitTest', 'create<build-vairant>DebugCoverageReport']) { 
    group = "reporting"
    description = "Generate unified Jacoco code coverage report"

    reports {
        xml.enabled false
        csv.enabled false
        html.destination  file("${buildDir}/reports/jacocoHtml")
    }

    def fileFilter = [
            '**/*Test*',
            '**/*_MembersInjector.class',
            '**/*_Factory.class']
    def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/<build-variant>/debug", excludes: fileFilter)
    def mainSrc = "${project.projectDir}/src/main/java"

    sourceDirectories = files([mainSrc])
    classDirectories = files([debugTree])
    executionData = fileTree(dir: "$buildDir", includes: [
            "jacoco/test<build-variant>DebugUnitTest.exec"
    ])

我执行命令:

代码语言:javascript
复制
 ./gradlew -Pcoverage clean jacocoTestReport

请帮助解决这个问题,所以它只执行单元测试,而不要求设备!

EN

回答 1

Stack Overflow用户

发布于 2022-09-22 20:22:00

我在调试Jacoco安装时看到了这个问题,幸运的是,这是解决方案的开始。

如果您正在运行Unit测试(包括Jacoco单元测试),则不应该需要设备。AndroidTests需要一个设备,而不是单元测试。

安装完所有Jacoco后,对gradle进行更改并重新同步:

  1. 打开Android的gradle窗口(查看->工具-> Gradle),您将看到大象的图标(比如)

  1. 单击此图标,将出现一个命令窗口。

  1. 输入框,如图所示:gradle app:createDebugUnitTestCoverageReport并点击。

这将启动Jacoco进程的运行。由于它通常依赖于单元测试(假设您的等级配置正确),它将强制单元测试首先运行。您将在gradle中指定的位置找到报表(默认情况下类似于./app/build/reports/coverage/test/debug/index.html). )

我的问题是,在第三步,我输入了错误的单元测试,我输入了gradle app:createDebug...,并接受了第一个建议。这是不对的!它放置了createDebugAndroidTestUnitCoverageReport,这不是我想要的(并且导致了请求设备的错误)。

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

https://stackoverflow.com/questions/50359144

复制
相关文章

相似问题

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