java - JUnit 断言失败

标签 java unit-testing junit

我有一个类,它的属性我不想为空。

setter 中的 Si 如下所示:

public void setFoo(String bar)
{
    if (bar == null)
        throw new IllegalArgumentException("Should not be null");
    foo = bar;
}

在我的 JUnit 测试用例中,我想断言如果我执行 obj.setFoo(null),它将失败。 我怎样才能做到这一点?

最佳答案

JUnit4:

@Test(expected= IllegalArgumentException.class)
public void testNull() {
   obj.setFoo(null);
}

JUnit3:

public void testNull() {
   try {
       obj.setFoo(null);
       fail("IllegalArgumentException is expected");
   } catch (IllegalArgumentException e) {
       // OK
   }
}

关于java - JUnit 断言失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26914417/

相关文章:

unit-testing - 我可以对进行 Sitecore 上下文调用的方法进行单元测试吗?

java - Intellij idea 2022.1.3 ultimate 显示错误java : JPS incremental annotation processing is disabled

java - 使用 spring 集成注释将多个 channel 发送到单个 channel

c# - 如何高效地进行单元测试

java - 在线程 "main"java.lang.NullPointerException 错误中获取异常

php - 使用 Codeception 运行现有的 Laravel 5.1 PHPUnit 测试

java - Eclipse:Junit 我在下面的 junit 选项卡中看到此错误

java - 返回类型为 Message<?> 的 Spring Integration Activator 的 JUnit

java - 如何获取 JTextField 中的字符数?

java - java 数组类型的方法未定义