当我将多个参数传递给testNg中的@test注释时,我的测试会跳过

时间:2013-07-12 23:05:27

标签: testng

我试图在testNG和testcase中跳过多个参数@Test注释.......

@Test(dependsOnMethods = {“vvvvv”},dataProvider =“getData”)

有些人可以帮助我,因为我如何传递多个参数来测试注释。

1 个答案:

答案 0 :(得分:0)

单独为@org.testng.annotations.Test设置多个参数不会使测试被跳过。

考虑以下课程:

public class Test1 {

@DataProvider(name = "getData")
public Iterator<Object[]> provideInts() {
    List<Object[]> list = new ArrayList<Object[]>();
    list.add(new Integer[]{0,1});
    list.add(new Integer[]{1,1});
    list.add(new Integer[]{1,2});

    return list.iterator();

}

@Test
public void vvvvv() {
    Reporter.log("vvvvv",true);
    Assert.assertTrue(true);
}

@Test(dependsOnMethods = {"vvvvv"},dataProvider="getData")
public void testStuff(Integer param0, Integer param1) {
    Reporter.log("testStuff: " + param0 + ", " + param1 , true);
    Assert.assertTrue(true);
}
}

(我使用了问题中的注释文本)。

它提供了以下输出(完全符合预期):

vvvvv
testStuff: 0, 1
testStuff: 1, 1
testStuff: 1, 2
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.395 sec

(Maven 3.0.5,默认设置,testng 6.8)。

所以,问题出在其他地方。犯罪嫌疑人:junit.Test注释使用; 'vvvvv'不是测试方法或失败。如果没有帮助,请粘贴更多代码和设置。