用于Hudson摄取的Android InstrumentationTestRunner XML输出

时间:2010-04-01 17:33:47

标签: xml android instrumentation

我有一个Android测试项目,我想链接到Hudson,但我没有找到一种方法将测试结果输出为XML而不是文本。有谁知道有没有一种简单的方法可以做到这一点?

-Dan

5 个答案:

答案 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/

它提供:

  • 每个相关包的单独XML文件
  • 在设备上生成XML文件(需要在测试后进行adb拉取)
  • 完全支持测试的时间
  • 我们在故障/错误情况下报告了完整的堆栈跟踪

我们扩展了android instrumentation runner,而不是分析java源代码(如在athena中)或分析输出(python脚本)。因此,我们可以获得使用标准命令行选项进行测试选择,覆盖启用等所有好处 - 所有这些都在此处描述:http://developer.android.com/guide/developing/testing/testing_otheride.html#RunTestsCommand

我们能够使用标准测试规则成功运行代码,并使用emma分析覆盖率,所有这些都在Jenkins中得到了很好的报道。

答案 3 :(得分:0)

没关系。我找到了这个问题:How to Generate Android Testing Report in HTML Automatically

答案 4 :(得分:0)

作为另一个后续行动,我提出了一个“体面”的解决方案。运行我的仪器测试时,我不得不使用'-r'选项(例如adb shell am instrument -w -r com.myApp / android.test.InstrumentationTestRunner> tests-out.txt)并编写我自己的解析器进行转换输出为XML格式,由Hudson接受。

它并不完美,因为它不提供时序,也不提供日志输出消息,但至少我现在有Hudson报告我的Android测试。