1. 程式人生 > >Junit4——測試套件的使用和引數化測試

Junit4——測試套件的使用和引數化測試

一,測試套件

@RunWith(Suite.class)/*使類成為測試套件的入口類*/
@Suite.SuiteClasses({TaskTest1.class,TaskTest2.class,TaskTest3.class})
public class SuitTest {

	/*
	 * 1,測試套件就是組織測試類一起執行的
	 * 
	 * 寫一個作為測試套件的入口類,這個類不包含其他方法
	 * 更改測試執行器Suite.class
	 * 將要測試的類作為陣列傳入到Suite.SuiteClasses中
	 * */

}


二,引數化測試

      
@RunWith(Parameterized.class)
public class ParamsTest {
	
	/*
	 * 1,更改預設的測試執行器
	 * 2,宣告變數來存放預期值跟結果值
	 * 3,宣告返回值為Collection的公共靜態方法,並使用@Parameters來修飾
	 * 4,為測試類宣告一個帶有引數的公共建構函式,並在其中為之生命的變數賦值
	 * */

	int expected=0;
	int input1=0;
	int input2=0;
	
	@Parameters
	public static Collection<Object[]> t(){
		return Arrays.asList( new Object[][]{
				{3,1,2},
				{4,2,2},
				{2,1,1}
		});
	}

	/*constructor method*/
	public ParamsTest(int expected,int input1,int input2){
		this.expected=expected;
		this.input1=input1;
		this.input2=input2;
	}
	

	@Test
	public void testadd(){
		assertEquals(expected, new Caculate().add(input1, input2));
	}

}