如何让@Test只运行一次

时间:2015-10-14 07:29:47

标签: testng testng-dataprovider

我正在进行数据驱动测试,目前我被困在@Test上。我想将数据传递给两个不同的数据提供者,并且只想运行一次@test。我怎样才能做到这一点。以下是描述我的情况的相同代码

 @DataProvider(name = "dp")
   public Object[][] createData(Method m) {
  System.out.println(m.getName());  // print test method name
  return new Object[][] { new Object[] { "Cedric" }};
}

@Test(dataProvider = "dp")
public void test1(String s) {
}

@Test(dataProvider = "dp")
public void test2(String s) {
}

在这里,我想首先运行@Test只运行一次。这有可能通过哪种方式吗?

1 个答案:

答案 0 :(得分:0)

根据你的评论,听起来你想要一个" dependsOnMethods"在你的测试中。

例如,如果您希望test1每次都在test2之前运行,那么您需要设置test2:

@Test(dependsOnMethods = "test1", alwaysRun = true, dataProvider = "dp")
public void test2(String s) {
}