将参数传递给testNG提供程序

时间:2012-06-04 16:53:39

标签: xml testng dataprovider

我是新手,TestNG文档中没有涉及这些信息,如果有人可以帮助我,我想了解一些事情。

@DataProvider(name="test1")
public Object[][] provideTestParam(ITestContext context){
    String testParam = context.getCurrentXmlTest().getParameter(test_param);
    return new Object[][]{{ testParam }};
}

@Test(dataProvider="test1")
public void testData(String data){

    //...
}
  1. 有谁知道test_param是什么?它是一个文件名,一个方法是testng.xml文件中的一些参数吗?

  2. 我查看了ITestContext的javadoc,我不清楚getParameter是如何工作的。它是否从数据来自的xml文件中获取单个哈希映射?或者它是否从数据来自的xml文件中获取所有键值对?

  3. 我想要做的就是在我的项目中存储一个xml文件,并使用xml文件中的数据。将其提供给数据提供者并运行我的测试。还有其他办法吗?

  4. getParameter可以从testng.xml <test>节点或<class>节点中获取值吗?

1 个答案:

答案 0 :(得分:1)

  1. 不知道,test_param没有出现在代码段中。
  2. ITestContext中公开的参数是testng.xml中的参数。
  3. 当然,您需要解析自己的XML文件,然后将找到的内容作为Object[][]返回。
  4. 所有这些都在the documentation的各个部分详细解释,如果您有更多问题,请随时再次询问。