新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)JUint教程:JUnit - 測(cè)試套件
在實(shí)際項(xiàng)目中,隨著項(xiàng)目進(jìn)度的開展,單元測(cè)試類會(huì)越來越多,可是直到現(xiàn)在我們還只會(huì)一個(gè)一個(gè)的單獨(dú)運(yùn)行測(cè)試類,這在實(shí)際項(xiàng)目實(shí)踐中肯定是不可行的。為了解決這個(gè)問題,JUnit 提供了一種批量運(yùn)行測(cè)試類的方法,叫做測(cè)試套件。

這樣,每次需要驗(yàn)證系統(tǒng)功能正確性時(shí),只執(zhí)行一個(gè)或幾個(gè)測(cè)試套件便可以了。測(cè)試套件的寫法非常簡(jiǎn)單,我們需要遵循以下規(guī)則:
- 創(chuàng)建一個(gè)空類作為測(cè)試套件的入口。
- 使用注解 org.junit.runner.RunWith 和 org.junit.runners.Suite.SuiteClasses 修飾這個(gè)空類。
- 將 org.junit.runners.Suite 作為參數(shù)傳入注解 RunWith,以提示 JUnit 為此類使用套件運(yùn)行器執(zhí)行。
- 將需要放入此測(cè)試套件的測(cè)試類組成數(shù)組作為注解 SuiteClasses 的參數(shù)。
- 保證這個(gè)空類使用 public 修飾,而且存在公開的不帶有任何參數(shù)的構(gòu)造函數(shù)
新建JunitTestOne測(cè)試類:
package test;
import org.junit.Assert;
import org.junit.Test;
/**類描述:
*@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è)試類:
package test;
import org.junit.Assert;
import org.junit.Test;
/**類描述:
*@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è)試套件類:
package test;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
/**類描述:
*@author: zk
*@date: 日期:2018-6-6 時(shí)間:下午4:00:06
*@version 1.0
*/
@RunWith(Suite.class)
@SuiteClasses({ JunitTestOne.class,JunitTestTwo.class })
public class AllTests {
}
測(cè)試通過,控制臺(tái)輸出:
上例代碼中,我將2個(gè)測(cè)試類放入了測(cè)試套件 AllTests 中,在 Eclipse 中運(yùn)行測(cè)試套件,可以看到2個(gè)測(cè)試類被調(diào)用執(zhí)行了。測(cè)試套件中不僅可以包含基本的測(cè)試類,而且可以包含其它的測(cè)試套件,這樣可以很方便的分層管理不同模塊的單元測(cè)試代碼。
注意:一定要保證測(cè)試套件之間沒有循環(huán)包含關(guān)系,否則無盡的循環(huán)就會(huì)出現(xiàn)在我們的面前。
網(wǎng)站標(biāo)題:創(chuàng)新互聯(lián)JUint教程:JUnit - 測(cè)試套件
文章來源:http://m.5511xx.com/article/ccegjec.html


咨詢
建站咨詢
