我想自动生成html格式的单元测试报告,用于Hudson持续集成服务器上的
Android应用程序.
因此,我首先尝试运行测试用例,并以xml格式收集测试结果文件.然后,我使用JUnitReport Task将XML结果文件转换为HTML格式.
我通过Android测试框架运行测试用例.但是,它只提供详细的输出信息,而不是标准的JUnit XML格式.我不知道如何生成没有JUnit XML结果文件的HTML单元测试报告.
如果我使用Eclipse运行测试用例,则可以将结果导出到XML文件中,并在每个测试用例中输入消耗时间的信息.那些XML文件可以通过JUnitReport Task正确地转换成HTML.因此,似乎有可能用时间消耗的信息收集测试结果.
解决方法
我们公司也有类似的问题.我们检查了所有可用的开源解决方案,并没有一个非常完美.所以我们开发了一个解决方案.我仍然不会说“终极”,但肯定要比雅典娜或者蟒蛇记者好多,还有任何后验分析.你可以在这里找到它:
http://code.google.com/p/the-missing-android-xml-junit-test-runner/
http://code.google.com/p/the-missing-android-xml-junit-test-runner/
它提供:
>每个包涉及的单独的XML文件
> XML文件在设备上生成(测试后需要进行adb pull’ed)
>完全支持测试的时间
>我们在故障/错误情况下报告了完整的堆栈跟踪
而不是分析java源代码(如athena)或分析输出(python脚本),我们扩展了android测试运行器.所以我们获得使用标准命令行选项的所有好处,用于测试选择,覆盖范围等.
我们能够使用标准测试规则成功运行代码,覆盖率由emma分析,所有这些都在Jenkins中得到很好的报道.