我通过设置 jvm 参数运行 Eclipse 中代码的代码覆盖率:-ea,但语句仍显示黄色。并且test2显示红色,为什么?
更重要的是,当我使用 -ea 时,是否启用了系统断言(-esa)?似乎当我使用-esa 时,-ea 无法工作。
我通过设置 jvm 参数运行 Eclipse 中代码的代码覆盖率:-ea,但语句仍显示黄色。并且test2显示红色,为什么?
更重要的是,当我使用 -ea 时,是否启用了系统断言(-esa)?似乎当我使用-esa 时,-ea 无法工作。
您从未使用 null 键值运行它,因此从未使用过断言路径。
(我之所以想到这一点,是因为我在 1980 年左右遇到了同样的问题。)
我得到答案:
0x9a ife栈顶int分数型不当0时跳转。
0x2b
aload_1
将调用类型至第二个顶。
0x59 dup 复制栈顶分数顶和复制值压入栈顶。 0xbf 抛出将栈顶的异常抛出。
0xb1 return 从当前返回void。 0xb2 getstatic 获取指定类的入栈域,并取其压值方法。
0xb6 invokevirtual 调用实例方法。
一次只启用断言或禁用它。所以不能覆盖所有的分支。