JUnit基础注解

本文介绍了JUnit测试框架中常用的基础注解,包括@BeforeClass、@Before、@Test、@After、@AfterClass和@Ignore。@BeforeClass在测试类开始前执行,全局执行一次,适合初始化数据库等。@Before在每个@Test方法前运行,用于资源初始化。@Test标记测试方法,可设置期望异常和超时。@After在@Test方法后运行,用于清理资源。@AfterClass全局执行一次,用于关闭在@BeforeClass中开启的资源。@Ignore则用于忽略特定测试方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JUnit基础注解

@BeforeClass注解

​ @BeforeClass常常用于在测试类开始之前,使用这个的方法常常被用于一些需要执行较大的代码执行量,例如是在测试类之前连接与打开数据库,从而让数据库可以执行数据库。
不仅仅如此,在运行JUnit测试类时,其常常为第一个执行的方法,他会在@Before注解之前运行,其与@Before的另一个不同是,@BeforeClass是全局只执行一次的,这代表着,@BeforeClass注释方法是被static修饰的。

@Before注释

​ @Before注解常常也是在测试类@Test注释之前运行的,所以这种方法常常被用于初始化@Test注解方法中所需的资源进行初始化,而且,与@BeforeClass注释方法不同,@Before是可以执行多次的,每次当有@Test注释方法运行时,@Before都会被调用一次,并且是测试类中的任意一个@Test注释方法被调用时,都会执行。

@Test注释

​ 在测试类中,@Test注释包含了真正的测试代码。并且测试方法必须使用public void进行修饰,。在@Test注释之中有两个可以选择的参数。
​ @Test(excepted=xx.class): xx.class 表示异常类,表示测试的方法抛出此异 常时,认为是正常的测试通过的
​ @Test(timeout = 毫秒数) :测试方法执行时间是否符合预期。

@After注释

​ 与@Before测试类类似,@After注释方法会在任意的@Test方法执行后进行运行,即使被@Test 或 @Before修饰的测试方法抛出异常。与@Before配套,所以常常被用于关闭在@Before中初始化的资源。

@AfterClass注释

​ 与@BeforeClass测试类类似,@AfterClass注解也是全局唯一的方法,因而也需要使用static来修饰,并且在全局代码中仅仅执行一次。它是在全局中最后一个被运行的注释方法。常常被使用于关闭在@BeforeClass测试类中打开的资源,如是关闭数据库。

@Ignore注释

​ 被这个注释修饰的测试方法会被测试运行器忽略。
注释代码测试运行
被测试类代码:

package test.Notes;

public class NoteTest {
  public String Hi(){
    return "hello,world";
  }
}

测试代码块:

package test.Notes;

import org.junit.*;
import static org.junit.Assert.assertEquals;

/**
* NoteTest Tester.
*
* @author <Authors name>
* @since <pre>4月 27, 2022</pre>
* @version 1.0
*/
public class NoteTestTest {
    @BeforeClass
    public static void beforeClass() throws Exception {
        System.out.println("@BeforeClass is running");
    }

    @AfterClass
    public static void afterClass() throws Exception{
        System.out.println("@AfterClass is running");
    }

    @Before
    public void before() throws Exception {
        System.out.println("@Before is running");
    }

    @After
    public void after() throws Exception {
        System.out.println("@After is running");
    }

    /**
    *
    * Method: add(int i, int j)
    *
    */
    @Test
    public void testAdd() throws Exception {
        NoteTest noteTest = new NoteTest();
        String ans = noteTest.Hi();
        String testAns = "hello,world";
        assertEquals(testAns,ans);
        System.out.println("@Test is testing");
    }
}

运行结果如图3-1
在这里插入图片描述

​ 图3-1 运行结果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值