2015-10-08 25 views
0

我有一個測試方法 例如如何用TestNG

@Test 
public void add(){ 
number1=number2+number3; 
} 

和我有外部數據等

執行用於不同的數據集相同的測試多次= 1 B = 2

一個= 4 b = 6

一個= 7 b = 10

我想執行我的@Test方法3次,用於不同的數據集。

如何實現這一目標用TestNG框架

回答

0

您應該使用的dataProvider,寫這樣的事情

import org.testng.Assert; 
import org.testng.annotations.DataProvider; 
import org.testng.annotations.Test; 

@DataProvider(name = "rangeWith2DArray") 
    public Object[][] rangeCalculator() { 
     return new Object[][]{ 
       {1, 2, 3}, 
       {4, 6, 10}, 
       {7, 10, 18} 
     }; 
    } 

    /** 
    * Here 2 Numbers are added 
    * And The test runs three times. 
    * 
    * @param num1  Num1 
    * @param num2  Num2 
    * @param validate - Number to Validate against 
    */ 
    @Test(dataProvider = "rangeWith2DArray") 
    public void testRangeSum(int num1, int num2, int validate) { 
     Assert.assertEquals(num1 + num2, validate); 
    } 

測試將運行三次,最後一次將失敗,因爲7 + 10不是18 :)

+0

接受答案,如果這能解決你的問題起訴。 – Sachi