我一直在鼓吹要处理异常并让测试失败(如果有的话)(下面给出的示例)。但是,这真的是正确的方法吗?无论如何,测试运行者将执行执行。为什么我们需要这样做?预测您的想法。
示例:假设 A.a() 抛出异常
@Test
public void exampleExceptionTest(){
try{
A.a();
//Assertion
}
catch(Exception e){
assert.fail();
}
}
我应该将上面的内容重写为,
@Test
public void exampleExceptionTest()throws Exception{
A.a();
//Assertion
}
最佳答案
没有理由在单元测试中捕获异常,以便您可以执行显式 fail()
。如果遇到意外异常,测试将失败,因此最佳实践是按照第二个代码片段中的方式执行操作:
@Test
public void exampleExceptionTest() throws Exception {
A.a();
//Assertion
}
关于java - 是否建议在 Junit 中抛出异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32455704/