JR3*_*652 5 java junit unit-testing code-coverage
有没有办法像这样覆盖类的类声明而获得代码覆盖?
public class MyClass{
public static void foo(int bar){
System.out.println("The Number is: "+bar);
}
}
Run Code Online (Sandbox Code Playgroud)
我可以通过JUnit测试轻松地达到foo方法,但是MyClass声明保持红色。这是因为类本身没有构造函数吗?如果是这样,有什么办法可以覆盖那部分代码,而无需更改类本身的代码?
谢谢
小智 6
这可能取决于您的特定环境。但是我只是检查了Eclipse / EclEmma,然后看到了您描述的行为。
请记住,该类确实具有构造函数-这是默认构造函数。如果您进行的测试仅调用new MyClass(),则红色标记似乎消失了。
但是-对于仅具有静态方法的类,首选方法是将该类标记为,final并创建一个私有构造函数。当然,如果您创建一个私有构造函数,它将在代码覆盖率中显示为红色-因为您无法调用私有构造函数!
最后,请记住,代码覆盖率是一种工具。我不会为查看器中的红色标记所困扰。
| 归档时间: |
|
| 查看次数: |
3405 次 |
| 最近记录: |