在谷歌测试中,我们有一个
EXPECT_NO_THROW(x.foo());
我怎样才能在 JUnit 中做到这一点?我要避免的事情是必须编写一个try/catch
块,并指定我的测试函数可以做throw
任何事情。Java强迫我throws
用测试函数声明一个子句......
是否可以?
在谷歌测试中,我们有一个
EXPECT_NO_THROW(x.foo());
我怎样才能在 JUnit 中做到这一点?我要避免的事情是必须编写一个try/catch
块,并指定我的测试函数可以做throw
任何事情。Java强迫我throws
用测试函数声明一个子句......
是否可以?
你不需要。如果您的方法抛出异常,则测试将失败,这正是您想要的。
在这种情况下,让您的测试声明抛出异常是可以接受的:
@Test public void testMe() throws Exception {
x.foo();
}
这意味着(对我而言)您不会期待任何例外。
在 Junit 4 中,我们可以使用如下语法来避免 try catch 块。
@Test (expected=ExceptionClassName.class)
public void yourTestCase(){
//testing codes
}
在这里你期待 ExceptionClassName 异常或
如果您总是期待异常,任何类型的都可以将其用作
@Test (expected=Exception.class)
public void yourTestCase(){
//testing codes
}