我有一个小的 junit4 测试,预计会出现异常。 这是代码:
@Test(expected = EntityVide.class)
public void testPing() throws Exception {
System.out.println("ping");
int in = 0;
int expResult = 1;
int result = instance.ping(in);
}
当我运行测试时,它显示为失败。 我已经添加了 @RunWith(JUnit4ClassRunner.class) 但没有任何改变。 我使用的是 netbeans 7.0 和 junit 4。
谢谢。
最佳答案
@Test 注释的
expected
属性用于预期的异常。有时您希望测试抛出某种类型的异常。在 JUnit 3.* 版本中,您必须自己编写 try/catch
block 。在 Junit 4 中,您可以使用注释来标记此测试。
您的测试不会引发异常,因此它会失败,因为您说您正在等待 EntityVide
类型的异常。删除此属性并使用 Assert.assertEquals()
验证您的结果。
关于java - 带有预期异常的测试显示为失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7878130/