看到没有关于如何在Eclipse中使用EMMA for Android应用程序的文档,真的很令人沮丧。有没有人设法在eclipse中使用EMMA进行Android应用程序?没有检查整个android源并做所有的hackery?
答案 0 :(得分:2)
这不能直接回答你的问题,但我建议你看看用Robolectric写测试:http://pivotal.github.com/robolectric/
使用Robolectric,您可以编写在JVM而不是Delvik VM中运行的测试。这意味着您几乎可以使用任何代码覆盖工具进行JAVA。您可能需要稍微更改一下代码才能编写Robolectric,而且您也没有开始攻击Robolectric。对我来说,这只是一种更好的编写测试方式。
答案 1 :(得分:2)
如果您有<path to test project>/build.xml
个文件重命名。
我能够通过从控制台执行以下命令来生成测试覆盖率报告:
<path to android tools>android update test-project -m <path to app project> -p <path to test project>
+ 输入,
cd <path to test project>
+ 输入,
ant emma debug install test
+ 输入,
我的机器上<path to android tools>
是/opt/android-sdk-linux/tools/
- 安装android SDK的文件夹。
生成<path to test project>/bin/coverage.html
个文件。
如果出现“错误的JAVA_HOME”错误,请执行gksu gedit /etc/environment
+ 输入,更正JAVA_HOME
,保存文件,注销或重新启动,然后重试。
答案 2 :(得分:1)
不幸的是,我认为EMMA不适用于通过SDK开发的应用。这是因为自从我上次阅读有关该主题以来情况发生了变化。这些工具设计用于操作系统本身,因此无法将其与我所知道的APK一起使用。
您可能会发现以下相关帖子很有用 - EMMA Code Coverage in Android。
答案 3 :(得分:1)
我找到了一些可能有用的链接 http://blog.pboos.ch/2011/06/coverage-fo-android-tests/ 你也可以检查一下 How to use EMMA code coverage in android 希望它适合你