我有一个在CircleCI上运行的Android项目。测试成功运行,我可以像这样上传工件:
- store_artifacts:
path: module1/build/reports/tests/testDebugUnitTest/
destination: test-results/module1
- store_artifacts:
path: module2/build/reports/tests/testDebugUnitTest/
destination: test-results/module2
- store_test_results:
path: test-results
这些已成功上传到CircleCI的“工件”选项卡。在“工件”选项卡中,我可以打开每个模块,然后单击每个单独模块的测试报告。我得到了一个不错的Index.html文件,其中显示了该模块的摘要。
但是,我无法获得测试摘要。无论我如何更改文件夹结构,它都只会显示“设置测试摘要”。
这是有问题的,因为如果测试失败,我必须单独打开每个模块并查看那些报告,而不是获得完整的摘要。
CircleCI不支持Gradle 5.2.1生成的Android测试报告(如我的),还是我做错了?
答案 0 :(得分:0)
事实证明,问题是Android / Kotlin默认情况下不一定生成XML报告。
解决方案是在每个模块的build.gradle文件中放置以下内容:
android {
testOptions {
unitTests.all {
reports {
junitXml.enabled = true
junitXml.destination = file("$buildDir/../../build/test-results/moduleName")
}
}
}
}
然后将config.yml文件的路径更新为:
- store_artifacts:
path: build/test-results
destination: test-results
- store_test_results:
path: build/test-results