java - 是否建议在 Junit 中抛出异常?

标签 java junit

我一直在鼓吹要处理异常并让测试失败(如果有的话)(下面给出的示例)。但是,这真的是正确的方法吗?无论如何,测试运行者将执行执行。为什么我们需要这样做?预测您的想法。

示例:假设 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/

相关文章:

java - 如何在我的 Android 应用程序中使用 onItemClick?

c# - .Net/C# 世界中是否有与 NetBeans RCP 类似的东西?

java - onItemSelectedListener 不起作用

java - 使用 Mockito 1.9.5 模拟 JdbcTemplate.queryForObject(..,...,...,)

java - 如何解决gradle同步失败:SSL handshake connection when trying to download recycleview?

java - Mockito:试图监视方法正在调用原始方法

java - JUnit测试扫描文件夹类

java - JUnit 测试 SQL 查询

java - 为装饰器模式编写junit测试的tdd步骤

java - Tomcat Java 错误