如何解决关于 SoftAssertion 后空检查的 Intellij 警告
我有一些测试,其中我创建了多个验证器函数,这些函数在每个测试用例上运行多个断言。我已将这些验证器设置为具有传递给每个验证器的 SoftAssertions
实例,并且在所有验证器函数运行后调用 assertAll()
。对于我的一个验证器,我有以下断言:
TestArtifact artifactA = testArtifacts.getArtifactA();
softAsserts.assertthat(artifactA)
.as("TestArtifactA should not be null")
.isNotNull();
if (artifactA != null) {
softAsserts.assertthat(artifactA.getTimestamp())
.isEqualTo(expectedTimestamp);
// additional assertions omitted
}
我的理解是,由于 SoftAssertions
只会在调用 assertAll()
函数时使测试用例失败,因此上面的空检查是必要的,以防上面的 SoftAssertion
为假。但是,在 Intellij 中,我在 if 语句中收到一条警告消息,说:
Condition 'artifactA != null' is always 'true'
我已经确认,如果删除 isNotNull()
软断言,警告就会消失。这个警告只是来自 Intellij 的误报吗?或者我是否遗漏了一些关于 SoftAssertions
的内容,这实际上使断言后的空检查变得不必要?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。