我知道Android的Ant工具附带内置的Emma代码覆盖,但Emma的报告看起来越来越过时,无法轻松集成到其他报告甚至Sonar中,主要是因为Emma缺乏详细的XML报告格式。我想要实现的是
我有其他选择吗?
编辑 This post on sonar-devel可能会总结Android代码覆盖率支持的当前状态以及Sonar支持。 叹息
答案 0 :(得分:6)
我已经推送了一个github仓库,其中包含您在问题中提到的相同配置:
并将其纳入声纳。一次只有一个,但配置仍然是一个有趣的工作基础。
https://github.com/stephanenicolas/Quality-Tools-for-Android
一位同事和我想到的是以一种非常相似的心态来处理这个问题。我们希望更好地集成不同的测试技术,以便Android项目和报告在声纳中工作。
如果您想加入我们的努力,我们很乐意为您提供回购权并开始与您合作。
斯特凡
- 更新
自2013年3月起,我们还提出了一个统一的配置,使用Jacoco离线仪器进行robolectric和标准junit测试,并在Sonar中同时显示结果。
答案 1 :(得分:2)
您可以使用robolectric框架。它允许您在Java VM上运行JUnit测试,而不是使用在Dalvik VM上运行的Android Junit测试。这将允许您使用任何标准覆盖工具(EclEmma,CodeCover,Cobertura等)。 它易于配置和运行稳定(你不能从Clover工具中说出来)。
答案 2 :(得分:1)
免责声明:我是Atlassian
是。还有另一种选择 - 您可以使用Atlassian Clover工具。从https://confluence.atlassian.com/display/CLOVER/Clover-for-Android
可以获得Clover-for-Android的alpha版本您写道,您希望实现以下目标: