TestNG: - 无法获取context.getCurrentXmlTest()

时间:2015-03-19 08:19:59

标签: java unit-testing automated-tests integration-testing testng

我有一些其他测试上下文,可以导入和读取自定义逻辑  “testConfigFile”

但是<我正计划迭代多次测试,试图将测试数据读作

@DataProvider(name = "testdata")
    public Object[][] testdata(ITestContext context) {
        Map<String, String> parameters = context.getCurrentXmlTest()
                .getAllParameters();
        System.out.println("-------");

        Iterator it = parameters.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry pairs = (Map.Entry) it.next();

            String x = (String) pairs.getValue();

            if (x.startsWith("created_")
                    && !pairs.getKey().toString().contains("shareData")) {
                String y = (String) universalMap.get(x);
                parameters.put((String) pairs.getKey(), y);
            }
        }
        return new Object[][] { { parameters } };
    }

即使在将其强制转换为

之后,上下文也无法检测 getCurrentXmlTest()方法
Map<String, String> parameters = (((ITestContext)context).getCurrentXmlTest())
                .getAllParameters();

仍然抛出: -

The method getCurrentXmlTest() is undefined for the type ITestContext

1 个答案:

答案 0 :(得分:0)

哦,我使用的是非常古老的testng-5.4-jdk15.jar TestNG库。

现在,我已升级它并且现在正常工作。

感谢。