【问题标题】:How to execute Testng and Maven without testng.xml file如何在没有 testng.xml 文件的情况下执行 Testng 和 Maven
【发布时间】:2015-08-29 16:59:44
【问题描述】:

如何配置 pom.xml 文件以便我可以在不使用 testng.xml 文件的情况下运行我的测试脚本?如您所知,我们可以使用 XmlSuite、XmlClass、XmlTest 和 TestNg 对象动态创建 testng.xml 文件。

public class ScriptTest010 {

public static void main(String[] args) {

    List<XmlSuite> suites = new ArrayList<XmlSuite>();
    XmlSuite suite = new XmlSuite();
    suites.add(suite);


    List<XmlClass> classes = new ArrayList<XmlClass>();
    XmlClass clz = new XmlClass();
    clz.setClass(SampleTest.class);
    classes.add(clz);


    XmlTest test = new XmlTest(suite);
    test.setClasses(classes);

    Map<String, String> params = new HashMap<String, String>();
    params.put("username", "mquraishi");
    params.put("password", "nopassword1$");
    params.put("search", "eat pray love");


    test.setParameters(params);


    XmlInclude testLogin = new XmlInclude("testLogin");

    List<XmlInclude> includes = new ArrayList<>();
    includes.add(testLogin);

    clz.setIncludedMethods(includes);


    TestNG testNg = new TestNG();
    testNg.setXmlSuites(suites);
    testNg.run();



}

}

【问题讨论】:

  • 您需要遵循的唯一事项是:命名约定例如ScriptTest.java 并将TestNG 作为依赖项添加到您的项目中......

标签: xml maven selenium selenium-webdriver testng


【解决方案1】:

Maven 将在 mvn test 生命周期阶段触发任何测试,前提是您已遵循 Maven Standard Directory Layout 和任何测试框架或插件要求。

对于 TestNG,您可以查看使用 Surefire plugin with TestNG ,如果您关注 surefire's test naming conventions,它将执行您的测试。

此外,这是一篇相当新的文章,其中包含TestNG setup example 的更深入。

【讨论】:

    【解决方案2】:

    我不知道这是否是一个可接受的答案,但如果您使用的是 Eclipse,可以安装一个 TestNG 插件,然后从 Eclipse 触发脚本,它会自动创建必要的 XML 文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-14
      • 2020-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-04
      • 2016-09-10
      相关资源
      最近更新 更多