0
如何测试使用junit测试的方法是否引发断言?下面是我测试的方法:测试是否引发断言
public int f(int i){
assert i > 0;
return i;
}
我使用的是junit 4.12。
如何测试使用junit测试的方法是否引发断言?下面是我测试的方法:测试是否引发断言
public int f(int i){
assert i > 0;
return i;
}
我使用的是junit 4.12。
您可以通过在@Test
注释提供参数测试:
@Test(expected = AssertionError.class)
public void shouldThrowExceptionWhenIncorrectInput() {
f(-3);
}
这将检查AssertException
被抛出。 但是,如果要确保此函数不会以不正确的参数运行,则必须注意,可以通过运行java并使用-da
参数来关闭声明。
为了确保抛出异常,我建议在某些验证方法中抛出IllegalArgumentException
,并为其提供正确的消息。然后你会确定当提供不正确的参数时,这总会引发异常。