7

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

-担

4

5 回答 5

4

仅供参考,对于任何偶然发现这个问题的人。我创建了一个新的 TestRunner,您可以在您的 Android 测试项目中使用它,它将以 Hudson(可能还有任何其他 CI 应用程序)可读的 XML 格式输出您的测试结果。你可以在这里阅读:http: //droiddudes.com/2010/04/07/athenatestrunner/或者从这里获取它:http: //github.com/dwatling/athena

于 2010-04-08T11:26:12.173 回答
3

我应该在不久前添加这个答案。

我已经使用https://github.com/jsankey/android-junit-report将近一年了,它的效果比 Athena 或我发现的任何其他东西都要好得多。

于 2011-07-26T12:44:19.337 回答
1

我们公司也有类似的问题。我们检查了所有可用的开源解决方案,但没有一个是真正完美的。所以我们为它开发并开源了一个解决方案。我仍然没有说“终极”,但肯定比 athena 或 python 记者或任何后测分析要好得多。你可以在这里找到它: http ://code.google.com/p/the-missing-android-xml-junit-test-runner/

它提供:

  • 每个涉及的包都有单独的 XML 文件
  • 在设备上生成 XML 文件(测试后需要 adb pull'ed)
  • 完全支持测试时间
  • 我们在失败/错误情况下报告了完整的堆栈跟踪

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

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

于 2011-04-07T00:05:54.063 回答
0

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

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

于 2010-04-02T13:50:21.337 回答
0

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

于 2010-04-01T18:48:21.437 回答