java - org.springframework.util.Assert 在我的 Surefire 报告中显示为错误,而实际上它应该是失败

标签 java spring junit

但是,当使用正常的 junit 断言时,会正确报告失败。

import static org.junit.Assert.assertEquals; 

正确显示为失败。

我能做些什么来确保 spring Assert 和正常的 junit 断言一样显示为失败?

为了澄清这一点

Assert.notNull(null);   

在测试报告中显示为错误,而不是失败。

最佳答案

您在单元测试中使用了错误的 Assert 类:

  • org.junit.Assert 类用于单元测试

  • org.springframework.util.Assert 类用于运行时代码。

实际的区别在于它们抛出不同的异常。

如果你的单元测试正在测试你的bean的afterPropertiesSet()方法是否正确调用org.springframework.util.Assert,那么这不是一个简单的测试JUnit 风格的断言。相反,它是对抛出 IllegalArgumentException 的测试,并且应该以与测试(例如)在适当的点抛出 IOException 相同的方式进行测试。

关于java - org.springframework.util.Assert 在我的 Surefire 报告中显示为错误,而实际上它应该是失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7688834/

相关文章:

java - Hadoop:java.lang.Exception:java.lang.RuntimeException:配置对象时出错

java - 如何消除更改标签中显示的图像之间的闪烁?

java - 测试其余 Controller 时出现断言错误预期为 :200 Actual :404

java - 插入后立即读取数据库记录返回NULL数据库记录

android - 测试 Activity 是否返回预期结果

java - MapStruct 忽略对象内列表内的属性

java - xml DSL 中的 Camel 谓词示例

java - Spring 方面记录器

java - 类似@TestedOn 的理论但可用于字符串?或者单独的参数化类?

xml - Spring Test/JUnit 问题 - 无法加载应用程序上下文