我正在TeamCity服务器上构建Android Studio / Gradle项目。我对TeamCity有些新意。目前,Android Studio自动生成的单元测试在TeamCity上构建项目时自动运行,并显示在" Tests" 。我还有一个检测测试(在连接的Android设备上运行的测试),但它不像单元测试那样自动运行。
我的解决方案是在TeamCity中添加Gradle构建步骤以运行已检测的测试。到目前为止,我没有取得什么成功。我使用了gradle任务uninstallAll connectedAndroidTest
,它运行了检测测试,但测试结果没有显示在" Tests"以及单元测试。如果检测测试失败,则构建失败,但失败的测试仍未显示在"测试"。
我做错了什么?是否有正确的方法在TeamCity上运行检测测试?
答案 0 :(得分:0)
您可以调整测试任务:
test.dependsOn uninstallAll, connectedAndroidTest
另一种方法是包含你的测试(虽然不确定这是否可行,因为我不确定uninstallAll和connectedAndroidTest任务正在做什么):
test {include 'org/foo/**'}
答案 1 :(得分:0)
connectedAndroidTest将根据此模式输出指定测试结果的文件:
HTML测试结果文件: path_to_your_project / MODULE_NAME /建造/输出/报告/ androidTests /连接/ 目录。 XML测试结果文件: path_to_your_project / module_name / build / outputs / androidTest-results / connected / directory。 (来自here)
使用该输出文件,您可以使用TeamCity的XML Report Processing功能。在Build Configuration中,只需转到Build Features选项卡并添加XML Report Processing功能。使用Google Test选项并将其指向报告输出目录,如下所示:
之后,您应该看到您的检测测试结果显示在您的构建中,就像常规的JUnit测试一样: