TestNG 6.11祈求者

时间:2017-04-25 14:20:31

标签: testng

最近从TestNG 6.9.10升级到6.11。这样做后,我注意到我们的TestNG Invoker类有一个弃用的方法:" addListener"。

    String filePath = System.getProperty("user.dir") + "\\testng.xml";

    TestListenerAdapter tla = new TestListenerAdapter();
    TestNG testng = new TestNG();

    File file = new File(filePath);
    if (file.exists() && !file.isDirectory()) {
        System.out.println("testng.xml file found at " + filePath);
        List<String> suites = Lists.newArrayList();
        suites.add(filePath);
        testng.setTestSuites(suites);
        testng.addListener(tla);  <-- Deprecated
        testng.run();
    } else {
        System.exit(0);
    }

我找不到任何关于这应该如何工作的文档。 TestNG尚未更新其网站上的文档。有没有人能够找出新的方法或程序?

构建显示了这个:

 [INFO] /C:/Users/jsmith/workspace/myproj/src/main/java/mypackage/TestngInvoker.java: C:\Users\jsmith\workspace\myproj\src\main\java\mypackage\TestngInvoker.java uses or overrides a deprecated API.
 [INFO] /C:/Users/jsmith/workspace/myproj/src/main/java/mypackage/TestngInvoker.java: Recompile with -Xlint:deprecation for details.

1 个答案:

答案 0 :(得分:2)

除了您应该使用的addListener之外,所有addListener(ITestNGListener)都已弃用。

由于Java解析,所选方法已弃用。

您有两个选择:

  1. 等待删除已弃用的方法,Java将找到预期的方法。
  2. 通过演员逼迫决议:

    testng.addListener((ITestNGListener) tla);