Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在没有Testng.xml文件的情况下执行Testng和Maven_Xml_Maven_Selenium_Selenium Webdriver_Testng - Fatal编程技术网

如何在没有Testng.xml文件的情况下执行Testng和Maven

如何在没有Testng.xml文件的情况下执行Testng和Maven,xml,maven,selenium,selenium-webdriver,testng,Xml,Maven,Selenium,Selenium Webdriver,Testng,如何配置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>(); X

如何配置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();



}
public类ScriptTest010{
公共静态void main(字符串[]args){
列表套件=新的ArrayList();
XmlSuite=newxmlsuite();
套房。添加(套房);
列表类=新的ArrayList();
XmlClass clz=新的XmlClass();
clz.setClass(SampleTest.class);
类。添加(clz);
XmlTest=新的XmlTest(套件);
测试。设置类(类);
Map params=新的HashMap();
参数put(“用户名”、“mquraishi”);
参数put(“密码”,“nopassword1$”;
params.put(“搜索”,“吃-祈祷-爱”);
测试。设置参数(参数);
xmlclude testLogin=newxmlclude(“testLogin”);
List includes=new ArrayList();
includes.add(testLogin);
clz.setIncludedMethods(包括);
TestNG TestNG=新的TestNG();
testNg.setXmlSuites(suites);
testNg.run();
}

}

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

对于TestNG,您可以查看使用,如果您遵循,它将执行您的测试


此外,这里有一篇相当新的文章,对一个问题进行了更深入的探讨。

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

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