Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.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

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
Java 如何通过maven surefire插件运行选定的suiteXmlFile_Java_Maven_Testng_Maven Surefire Plugin - Fatal编程技术网

Java 如何通过maven surefire插件运行选定的suiteXmlFile

Java 如何通过maven surefire插件运行选定的suiteXmlFile,java,maven,testng,maven-surefire-plugin,Java,Maven,Testng,Maven Surefire Plugin,我已经回答了所有相关的问题。但我认为我的问题与其他问题没有什么不同 我有以下套件xml文件 初始化.xml consult.xml smoke.xml regression.xml xml代码片段 org.apache.maven.plugins maven surefire插件 2.21.0 dataproviderthreadcount 2. 初始化.xml ${suiteXmlFile} consult.xml org.testng testng 6.14.3 编译-> 我需要先执行ini

我已经回答了所有相关的问题。但我认为我的问题与其他问题没有什么不同

我有以下套件xml文件

初始化.xml

consult.xml

smoke.xml

regression.xml

xml代码片段

org.apache.maven.plugins maven surefire插件 2.21.0 dataproviderthreadcount 2. 初始化.xml ${suiteXmlFile} consult.xml org.testng testng 6.14.3 编译-> 我需要先执行initialize.xml,然后执行smoke.xml或regression.xml,然后按顺序执行consult.xml。 考虑下面的集合作为一个例子:

初始化.xml smoke.xml regression.xml-> consult.xml 如何从pom参数化中间suiteXmlFile?我尝试使用下面的命令,但它不起作用并引发异常

mvn clean test -Dsurefire.suiteXmlFile=smoke.test
[错误]org.apache.maven.surefire.booter.SurefireExecutionException:提供程序中的异常 [错误]位于org.apache.maven.plugin.surefire.InPluginVMSurefireStarter.runSuitesInProcessInPluginVMSurefireStarter.java:91 [错误]位于org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProviderAbstractSurefireMojo.java:1132 [错误]位于org.apache.maven.plugin.surefire.AbstractSurefireMojo.ExecuteAfterPremissionScheckedAbstractSurefiremojo.java:978 [错误]位于org.apache.maven.plugin.surefire.AbstractSurefireMojo.ExecuteActSurefiremojo.java:854 [错误]位于org.apache.maven.plugin.DefaultBuildPluginManager.executeMojoDefaultBuildPluginManager.java:137 [错误]位于org.apache.maven.lifecycle.internal.MojoExecutor.executeMojoExecutor.java:208 [错误]位于org.apache.maven.lifecycle.internal.MojoExecutor.executeMojoExecutor.java:154 [错误]位于org.apache.maven.lifecycle.internal.MojoExecutor.executeMojoExecutor.java:146 [错误]位于org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProjectLifecycleModuleBuilder.java:117 [错误]位于org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProjectLifecycleModuleBuilder.java:81 [错误]位于org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.buildSingleThreadedBuilder.java:56 [错误]位于org.apache.maven.lifecycle.internal.LifecycleStarter.executeLifecycleStarter.java:128 [错误]位于org.apache.maven.DefaultMaven.doExecuteDefaultMaven.java:305 [错误]位于org.apache.maven.DefaultMaven.doExecuteDefaultMaven.java:192 [错误]位于org.apache.maven.DefaultMaven.executeDefaultMaven.java:105 [错误]位于org.apache.maven.cli.MavenCli.executeMavenCli.java:956 [错误]位于org.apache.maven.cli.MavenCli.doMainMavenCli.java:290 [错误]位于org.apache.maven.cli.MavenCli.mainMavenCli.java:194 [错误]位于sun.reflect.NativeMethodAccessorImpl.invoke0Native方法 [错误]位于sun.reflect.NativeMethodAccessorImpl.invokeNativeMethodAccessorImpl.java:62 sun.reflect.DelegatingMethodAccessorImpl.invokeDelegatingMethodAccessorImpl.java中的[错误]:43 [错误]位于java.lang.reflect.Method.invokeMethod.java:498 [错误]位于org.codehaus.plexus.classworlds.launcher.launchernhancedlauncher.java:289 [错误]位于org.codehaus.plexus.classworlds.launcher.LaunchLaunchLauncher.java:229 [错误]位于org.codehaus.plexus.classworlds.launcher.launcher.mainWithExitDelauncher.java:415 [错误]位于org.codehaus.plexus.classworlds.launcher.launcher.mainluncher.java:356 [错误]由以下原因引起:java.lang.NullPointerException [错误]位于org.apache.maven.surefire.testng.TestNGXmlTestSuite.locatetestsettestngxmltestsuite.java:97 [错误]位于org.apache.maven.surefire.testng.TestNGProvider.invokeTestNGProvider.java:119 [错误]位于sun.reflect.NativeMethodAccessorImpl.invoke0Native方法 [错误]位于sun.reflect.NativeMethodAccessorImpl.invokeNativeMethodAccessorImpl.java:62 sun.reflect.DelegatingMethodAccessorImpl.invokeDelegatingMethodAccessorImpl.java中的[错误]:43 [错误]位于java.lang.reflect.Method.invokeMethod.java:498 [错误]位于org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2ReflectionUtils.java:206 [错误]位于org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invokeProviderFactory.java:160 [错误]位于org.apache.maven.surefire.booter.ProviderFactory.invokeProviderProviderFactory.java:83 [错误]位于org.apache.mav plugin.surefire.InPluginVMSurefireStarter.runSuitesInProcessInPluginVMSurefireStarter.java:87 [错误]。。。25多 [错误]->[帮助1] [错误] [错误]要查看错误的完整堆栈跟踪,请使用-e开关重新运行Maven。 [错误]使用-X开关重新运行Maven以启用完整调试日志记录。 [错误] [错误]有关错误和可能的解决方案的更多信息,请阅读以下文章: [错误][帮助1]http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException 如果我使用下面的命令,它正在工作,但没有执行initialize.xml和consult.xml。请注意s in命令

mvn clean test -Dsurefire.suiteXmlFiles=smoke.test
我也尝试过创建不同的套件xml,如下所示,并通过命令行传递它,但它并没有像我预期的那样工作


请帮忙。任何参考资料或有用的链接也将不胜感激。

我们可以做一些如下的事情吗,其中大部分您已经做过了:

<suiteXmlFiles>
     <suiteXmlFile>Initialize.xml</suiteXmlFile>
     <suiteXmlFile>${smokeORregression}</suiteXmlFile>
     <suiteXmlFile>Conclude.xml</suiteXmlFile>
</suiteXmlFiles>
然后根据需要执行mvn clean test-DsmokeORregression=smoke.xml或mvn clean test-DsmokeORregression=regression.xml

mvn命令中不需要Surefire