在带有Gradle的Android上使用Jacoco生成覆盖率报告时如何排除测试

时间:2019-08-19 09:09:10

标签: android gradle android-gradle-plugin jacoco

我想运行一个Gradle命令,该命令将生成一份覆盖率报告,并运行一组特定的测试,而不是软件包中的每个测试。在这种情况下,我想生成有关仪器测试而不是UI测试的报告。

我已经设置了Jacoco,以便可以运行Gradle命令 ./gradlew create<package-name>DebugAndroidTestCoverageReport以在androidTest文件夹中运行我的所有测试。

我尝试./gradlew create<package-name>DebugAndroidTestCoverageReport --tests "com.myproject.test.*"仅运行test程序包中的测试,但这会返回错误Unknown command-line option '--tests'

使用Gradle命令test --tests "com.myproject.test.*"可以正常运行并运行指定的测试,但不会生成覆盖率报告。

有没有一种方法可以在仍然生成覆盖率报告的同时进行测试过滤?

1 个答案:

答案 0 :(得分:0)

经过一番搜索,我偶然发现了这个问题Android, Gradle. How start specific instrumented test method?,这给了我答案。

为了按包筛选出测试用例,您可以使用

./gradlew create<package-name>DebugAndroidTestCoverageReport -Pandroid.testInstrumentationRunnerArguments.package=com.example.test

此命令将仅针对指定的测试生成覆盖率报告。

相关问题