我想知道dataprovider是否可以将数据与@Test一起传递给@BeforeTest。我正在编写脚本,我希望将一些数据传递给@BeforeTest并执行一些操作。如果可能的话,请分享逻辑。 谢谢
答案 0 :(得分:1)
无法将数据提供程序与@BeforeTest
(以及可能的任何其他@BeforeX
方法)一起使用,但您可以使用之前的@Test
方法,其他所有方法{{1}方法依赖(@Test
):
dependsOnMethods
但要小心! TestNG不是JUnit,而是@Test(dataProvider="dp")
public void beforeTest(<params...>) {
<...>
}
@Test(dependsOnMethods="beforeTest") {
<...>
}
!= @BeforeTest
。
答案 1 :(得分:0)
有可能。通过TestNG XML传递参数,并使用@BeforeClass中的ITTestContext读取它们。
只需使用
context.getCurrentXmlTest()。getParameters()
@SuppressWarnings("deprecation")
@BeforeClass
public void setUp(ITestContext context) {
System.out.println(context.getCurrentXmlTest().getParameters());
}