我有一个Android测试项目,我想链接到Hudson,但我没有找到一种方法将测试结果输出为XML而不是文本。有谁知道有没有一种简单的方法可以做到这一点?
-Dan
答案 0 :(得分:4)
仅供参考,对于碰巧遇到这个问题的其他人来说。我已经创建了一个新的TestRunner,您可以在Android测试项目中使用它,它将以Hudson(可能还有其他CI应用程序)可读的XML输出您的测试结果。你可以在这里阅读:http://droiddudes.com/2010/04/07/athenatestrunner/或者只是从这里抓取它:http://github.com/dwatling/athena
答案 1 :(得分:3)
我应该在一段时间之前添加这个答案。
我已经使用https://github.com/jsankey/android-junit-report近一年了,这比雅典娜或我发现的其他任何东西都要好得多。
答案 2 :(得分:1)
我们公司遇到过类似的问题。我们检查了所有可用的开源解决方案,但没有一个是非常完美的。所以我们开发并开发了一个解决方案。我仍然没有说“终极”,但肯定比雅典娜或蟒蛇记者或任何后测试分析要好得多。你可以在这里找到它: http://code.google.com/p/the-missing-android-xml-junit-test-runner/
它提供:
我们扩展了android instrumentation runner,而不是分析java源代码(如在athena中)或分析输出(python脚本)。因此,我们可以获得使用标准命令行选项进行测试选择,覆盖启用等所有好处 - 所有这些都在此处描述:http://developer.android.com/guide/developing/testing/testing_otheride.html#RunTestsCommand。
我们能够使用标准测试规则成功运行代码,并使用emma分析覆盖率,所有这些都在Jenkins中得到了很好的报道。
答案 3 :(得分:0)
答案 4 :(得分:0)
作为另一个后续行动,我提出了一个“体面”的解决方案。运行我的仪器测试时,我不得不使用'-r'选项(例如adb shell am instrument -w -r com.myApp / android.test.InstrumentationTestRunner> tests-out.txt)并编写我自己的解析器进行转换输出为XML格式,由Hudson接受。
它并不完美,因为它不提供时序,也不提供日志输出消息,但至少我现在有Hudson报告我的Android测试。