有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java有可能让Jacoco停止抱怨缺少“else”语句吗?

虽然这不是一个真正的问题,但如果有一个可以改变这一点的设置,那就太好了

基本上,我正在处理一堆表单字段,要么上传,要么不上传

我检查上传的字段是否为空,如果不是,我会对其进行处理

如果字段空。。。那就什么都没有了。没有任何事情发生,它可以保持为空。这是用于数据库插入,其中某些字段允许为空

下面是一些伪代码:

if(randomfield != null) {
    //do something with randomField before insertion in to the DB.
}

Jacoco不断向我传达信息,它无法检查其他可能性,这意味着它在抱怨没有其他声明。但永远都不会有。有没有可能让Jacoco停止检查这一点?如果有,我在哪里可以看到?谷歌搜索毫无帮助


共 (1) 个答案

  1. # 1 楼答案

    Jacoco是一个报道工具。它检查代码的每一个可能分支是否都被覆盖。它并不抱怨没有其他声明。它抱怨的是,您从未执行过randomField为空的代码

    如果randomField为null,那么代码的其余部分可能会中断。你的测试并没有测试这种可能性,而这正是jacoco警告你的。下面是一个例子:

    String foo = null;
    if(randomfield != null) {
        foo = randomField;
    }
    System.out.println(foo.toLowerCase());
    

    如果用randomField作为"hello"测试代码,一切都会顺利进行。但是如果randomField为空,那么这将导致不希望出现的NullPointerException。这是一个可以通过使用空随机字段测试代码来检测的错误。既然你没这么做,杰科科就在抱怨