JUnit - 測(cè)試套件

2021-05-22 17:48 更新

在實(shí)際項(xiàng)目中,隨著項(xiàng)目進(jìn)度的開(kāi)展,單元測(cè)試類(lèi)會(huì)越來(lái)越多,可是直到現(xiàn)在我們還只會(huì)一個(gè)一個(gè)的單獨(dú)運(yùn)行測(cè)試類(lèi),這在實(shí)際項(xiàng)目實(shí)踐中肯定是不可行的。為了解決這個(gè)問(wèn)題,JUnit 提供了一種批量運(yùn)行測(cè)試類(lèi)的方法,叫做測(cè)試套件。

這樣,每次需要驗(yàn)證系統(tǒng)功能正確性時(shí),只執(zhí)行一個(gè)或幾個(gè)測(cè)試套件便可以了。測(cè)試套件的寫(xiě)法非常簡(jiǎn)單,我們需要遵循以下規(guī)則:

  1. 創(chuàng)建一個(gè)空類(lèi)作為測(cè)試套件的入口。
  2. 使用注解 org.junit.runner.RunWith 和 org.junit.runners.Suite.SuiteClasses 修飾這個(gè)空類(lèi)。
  3. 將 org.junit.runners.Suite 作為參數(shù)傳入注解 RunWith,以提示 JUnit 為此類(lèi)使用套件運(yùn)行器執(zhí)行。
  4. 將需要放入此測(cè)試套件的測(cè)試類(lèi)組成數(shù)組作為注解 SuiteClasses 的參數(shù)。
  5. 保證這個(gè)空類(lèi)使用 public 修飾,而且存在公開(kāi)的不帶有任何參數(shù)的構(gòu)造函數(shù)

新建JunitTestOne測(cè)試類(lèi):

package test;

import org.junit.Assert;
import org.junit.Test;

/**類(lèi)描述:
 *@author: zk
 *@date: 日期:2018-6-6 時(shí)間:下午3:56:17
 *@version 1.0
 */

public class JunitTestOne {

    @Test
    public void test() {
        System.out.println("測(cè)試一。。。");  
        Assert.assertTrue(true);  
    }

}

新建JunitTestTwo測(cè)試類(lèi):

package test;

import org.junit.Assert;
import org.junit.Test;

/**類(lèi)描述:
 *@author: zk
 *@date: 日期:2018-6-6 時(shí)間:下午3:58:56
 *@version 1.0
 */

public class JunitTestTwo {

    @Test
    public void test() {
         System.out.println("測(cè)試二。。。");  
         Assert.assertTrue(true);  
    }

}

新建測(cè)試套件類(lèi):

1

2

package test;

import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;

/**類(lèi)描述:
 *@author: zk
 *@date: 日期:2018-6-6 時(shí)間:下午4:00:06
 *@version 1.0
 */

@RunWith(Suite.class)
@SuiteClasses({ JunitTestOne.class,JunitTestTwo.class })
public class AllTests {

}

3

測(cè)試通過(guò),控制臺(tái)輸出:

 1095747-20180605171316605-398931391

上例代碼中,我將2個(gè)測(cè)試類(lèi)放入了測(cè)試套件 AllTests 中,在 Eclipse 中運(yùn)行測(cè)試套件,可以看到2個(gè)測(cè)試類(lèi)被調(diào)用執(zhí)行了。測(cè)試套件中不僅可以包含基本的測(cè)試類(lèi),而且可以包含其它的測(cè)試套件,這樣可以很方便的分層管理不同模塊的單元測(cè)試代碼。

注意:一定要保證測(cè)試套件之間沒(méi)有循環(huán)包含關(guān)系,否則無(wú)盡的循環(huán)就會(huì)出現(xiàn)在我們的面前。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)