can dataprovider可以将数据传递给@BeforeTest

时间:2015-10-14 05:52:56

标签: testng testng-dataprovider

我想知道dataprovider是否可以将数据与@Test一起传递给@BeforeTest。我正在编写脚本,我希望将一些数据传递给@BeforeTest并执行一些操作。如果可能的话,请分享逻辑。 谢谢

2 个答案:

答案 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());    

  }