使用 Cucumber JVM 时如何测试是否抛出了正确的异常?使用 JUnit 时,我会这样做:
@Test(expected = NullPointerException.class)
public void testExceptionThrown(){
taskCreater.createTask(null);
}
如您所见,这是非常优雅的。但是,当使用 cucumber JVM 时,我怎样才能达到同样的优雅呢?我的测试现在看起来像这样:
@Then("the user gets a Null pointer exception$")
public void null_exception_thrown() {
boolean result = false;
try {
taskCreater.createTask(null);
} catch (NullPointerException e) {
result = true;
}
assertTrue(result);
}
注意需要一个try
..catch
后跟一个assertTrue
on 标志。