Java JUnit:寻找“ assertNothing”

时间:2019-05-09 21:21:54

标签: java junit

我从JUnit开始,尝试为测试找到最佳的assert方法。

让我们说我可以测试一下

  • 不返回值
  • 如果输入无效,将引发异常

例如

void foo (int a) throws Exception
{
  if (a <= 0)
  { 
     throw new Exception ("below 0");
  }
}

我会用

测试否定输入
assertThrows (Exception.class, () -> { foo (-1); });

但是如何检查正输入是否不会引发异常?

我在断言中找到的所有成员都检查返回值或异常。

2 个答案:

答案 0 :(得分:2)

很简单:只需调用方法:

foo(1);

如果这不会引发异常,则没有异常会导致测试失败。

答案 1 :(得分:0)


@Test
public void TestNotThrows() {
  try {
    foo(1);
  } catch (Exception e) {
    // uh oh, test failed
    Assert.fail();
  }
}