2011-07-28 53 views
2

是否可以將DataPoints分組爲其他類型?將數據點分成組?

例如,假設我有一個理論,我想測試,使用「年齡」和「體重」作爲參數:

@Theory 
public void testSomething(int age, int weight) { ... } 

那裏,說,「年齡」可能是10,20,或50,體重可能是50,100,或200

據我所知,我不能告訴JUnit的一些整型數據點對應的年齡,和其他的對應權重。有誰知道是否有辦法做到這一點?

回答

0

我相信,數據點是靜態的,所以我不認爲你可以在這裏使用它們。

僅供參考,這裏是你如何與TestNG做到這一點:

@DataProvider 
public Object[][] dp() { 
    List<Object[]> result = Lists.newArrayList(); 
    for (int i : Arrays.asList(10, 20, 50)) { 
    for (int j : Arrays.asList(50, 100, 200)) { 
     result.add(new Object[] { i, j }); 
    } 
    } 
    return result.toArray(new Object[result.size()][]); 
} 

@Test(dataProvider = "dp") 
public void testSomething(int age, int weight) { 
    System.out.println("Age:" + age + " weight:" + weight); 
} 

會打印:

Age:10 weight:50 
Age:10 weight:100 
Age:10 weight:200 
Age:20 weight:50 
Age:20 weight:100 
Age:20 weight:200 
Age:50 weight:50 
Age:50 weight:100 
Age:50 weight:200 

=============================================== 
SingleSuite 
Total tests run: 9, Failures: 0, Skips: 0 
=============================================== 
+0

酷;我會研究它。謝謝。 – Kricket