gpt4 book ai didi

java - 是否有可能让 Jacoco 停止提示缺少 "else"语句?

转载 作者:行者123 更新时间:2023-11-29 05:23:48 25 4
gpt4 key购买 nike

虽然这不是什么大问题,但如果有一个设置可以改变这一点就好了。

基本上,我正在处理一堆上传或不上传的表单字段。

我检查上传的字段是否为空,如果不是,我会用它做一些事情。

如果字段 null...那么什么都没有。没有任何反应,它可以保持为空。这是用于允许某些字段为空的数据库插入。

这是一些伪代码:

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

Jacoco 不断给我消息说它无法检查另一种可能性,这意味着它在提示没有 else 语句。但永远不会有一个。是否有可能让 Jacoco 停止检查这个,如果是这样,我在哪里可以读到它? Google 搜索没有帮助。

最佳答案

Jacoco 是一个覆盖工具。它检查是否涵盖了代码的每个可能分支。它不会提示没有 else 语句。它提示的是您从未执行过 randomField 为 null 的代码。

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

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

如果你用 randomField"hello" 测试代码,一切都会正常。但如果 randomField 为 null,则这将导致不希望的 NullPointerException。这是一个可以通过使用空 randomField 测试代码来检测的错误。由于您没有这样做,jacoco 正在提示。

关于java - 是否有可能让 Jacoco 停止提示缺少 "else"语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23536643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com