在被测 Android Activity 中抛出未捕获的异常时,不会生成 Emma 代码覆盖率。但是,如果测试通过,则覆盖成功生成!我正在使用 SDK r15、Emma 1.6.x macosx 和默认的 build.xml。以下是 ant test
目标的输出:
[exec] com.stackoverflow.android.test.ActivityTest:INSTRUMENTATION_RESULT: shortMsg=java.lang.ArithmeticException
[exec] INSTRUMENTATION_RESULT: longMsg=java.lang.ArithmeticException: divide by zero
[exec] INSTRUMENTATION_CODE: 0
[echo] Downloading coverage file into project directory...
[exec] remote object '/data/data/com.stackoverflow.android/coverage.ec' does not exist
这正常吗?我是 Emma 的新手,但我知道 JaCoCo 有时会那样做!请指教。
最佳答案
我刚遇到这个问题,不涉及 android sdk 或 mac os。我在 Windows 上使用 JUnit 测试覆盖标准 JDK 代码库。我也是 Emma 的新手,但我发现这是正常的。 :( 以下链接来自 EclEmma 自己的常见问题解答。
Why are JUnit4 test cases with expected exceptions shown as not covered?
所以如果有人知道解决这个问题的方法,我很乐意听听。
关于android - 抛出未捕获的异常时未生成 Emma 代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11022709/