首页 文章

Junit异常测试

提问于
浏览
4

我有两个测试来检查预期的异常抛出 . 我正在使用Junit 4并具有以下语法 .

@Test(expected=IllegalArgumentException.class)
public void testSomething(){
..........
}

即使抛出IllegalArgumentException而另一个传递,其中一个测试也会失败 . 有什么想法丢失?我修改了未能跟随的测试并且它通过了 .

public void testSomething(){
 try{
  ............ //line that throws exception
  fail();
 }catch(IllegalArgumentException e) {
 }
}

1 回答

  • 7

    Prithis只是我注意到第二次测试根本没有@Test注释 . 即使方法名称以test ***开头,JUNIT4也不会运行未注释的测试(除非您实际扩展TestCase类,在这种情况下它的行为类似于JUNIT3.x测试用例)

    也许这就是测试根本没有运行的情况(因此让你觉得它通过了)?

相关问题