JUnit4的深入使用

JUnit4深入使用總結

 

I JUnit4中的測試套件:

 1、測試套件就是值測試類一起運行的。

  寫一個測試套件的入口類,這個類裏不包含其他的方法

  更改測試運行器Suite.class

  將要測試的類作爲數組傳入到Suite.SuiteClasses({})

 代碼實例:

創建三個JUnit測試類:

public class UnitTest1 {

	@Test
	public void test() {
		System.out.println("test1 running...");
	}

}
public class UnitTest2 {

	@Test
	public void test() {
		System.out.println("test2 running...");
	}

}
public class UnitTest3 {

	@Test
	public void test() {
		System.out.println("test3 running...");
	}
}
創建總測試類,使用註解方式將三個測試類同一到一個類方法中運行

package me.timlong.util;

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

@RunWith(Suite.class)	
@SuiteClasses({UnitTest1.class, UnitTest2.class, UnitTest3.class})
public class MultiTest {
	
	@Test
	public void test() {
		
	}

}


II JUnit4中的參數化設置

 1、更改默認的測試運行器爲RunWith(Parameterized.class)。

 2、聲明變量來存放預期值和結果值。

 3、聲明一個返回值爲Collection的公共靜態方法,並使用Parameters進行修飾。

 4、爲測試類聲明一個帶有參數的公共構造函數,並在其中爲之聲明變量賦值。

  代碼實例:

package me.timlong.util;

import static org.junit.Assert.*;

import java.util.Arrays;
import java.util.Collection;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

@RunWith(Parameterized.class)
public class ParameterTest {
	
	int expected = 0;
	int input1 = 0;
	int input2 = 0;
	
	/*
	 * 構造方法爲聲明的變量賦值
	 */
	public ParameterTest(int expected, int input1, int input2) {
		this.expected = expected;
		this.input1 = input1;
		this.input2 = input2;
	}
	
	@Parameters
	public static Collection<Object[]> param(){
		return Arrays.asList(new Object[][]{
			{3, 1, 2},
			{4, 2, 2}
		});
	}
	/*
	 * 進行多組數據的測試
	 */
	@Test
	public void testAdd() {
		assertEquals(expected, new Calculate().add(input1, input2));
	}
}

 OK,技術進階需要不斷的練習,望每天進步一點!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章