Parallel processing 如何将参数(cucumber标记)从maven/java运行时传递到cucumber jvm并行插件,最好使用maven概要文件

Parallel processing 如何将参数(cucumber标记)从maven/java运行时传递到cucumber jvm并行插件,最好使用maven概要文件,parallel-processing,maven-surefire-plugin,cucumber-java,maven-failsafe-plugin,Parallel Processing,Maven Surefire Plugin,Cucumber Java,Maven Failsafe Plugin,用于使用JVM开发基于Java的移动自动化框架。 我们使用cucumberjvm并行插件来运行cucumber&传递cucumber标记。 片段: com.github.temyers 请建议如何实现这一目标 非常感谢您可以使用-Dmaven.plugin.property.name=value从命令行传递任何maven插件属性,这样您就可以使用-Dcucumber.options=--tags@sometag设置触发标记。根据您的shell,您可能需要在适当的位置添加引号。您可以使用-Dm

用于使用JVM开发基于Java的移动自动化框架。 我们使用cucumberjvm并行插件来运行cucumber&传递cucumber标记。 片段:


com.github.temyers

请建议如何实现这一目标
非常感谢

您可以使用
-Dmaven.plugin.property.name=value
从命令行传递任何maven插件属性,这样您就可以使用
-Dcucumber.options=--tags@sometag
设置触发标记。根据您的shell,您可能需要在适当的位置添加引号。

您可以使用
-Dmaven.plugin.property.name=value
从命令行传递任何maven插件属性,这样您就可以使用
-Dcucumber.options=--tags@sometag
设置触发标记。根据您的shell,您可能需要在适当的位置添加引号。

对于运行时,我使用mvn clean verify-Dcucumber.options=“--tags@sometag”。但是为了从Jenkins运行,我需要使用mvn clean verify-Dcucumber.options=--tags@sometag是否可以使用Cucumber JVM并行插件进行webdriver.io测试\n我们使用Cucumber.js runner运行webdriver.io测试。如果“tags”值是一个多音表达式,例如,“not@sometag”,则此方法不起作用。对于运行时,我使用mvn clean verify-Dcucumber.options=“--tags@sometag”。但是为了从Jenkins运行,我需要使用mvn clean verify-Dcucumber.options=--tags@sometag是否可以使用Cucumber JVM并行插件进行webdriver.io测试\n我们使用Cucumber.js runner运行webdriver.io测试。如果“tags”值是一个多音表达式,例如“not@sometag”,则这种方法不起作用
  <plugin>
            <groupId>com.github.temyers</groupId>
            <artifactId>cucumber-jvm-parallel-plugin</artifactId>
            <version>4.2.0</version>
            <executions>
                <execution>
                    <id>generateRunners</id>
                    <phase>generate-test-sources</phase>
                    <!--<phase>validate</phase>-->
                    <goals>
                        <goal>generateRunners</goal>
                    </goals>
                    <configuration>
                        <!-- Mandatory -->
                        <!-- List of package names to scan for glue code. -->
                        <glue>
                            <package>stepDefs</package>
                            <!--<package>com.example.other</package>-->
                        </glue>
                        <!-- These are optional, with the default values -->
                        <!-- Where to output the generated tests -->
                        <outputDirectory>${project.build.directory}/cucumber-parallel/html</outputDirectory>
                        <!-- The directory, which must be in the root of the runtime classpath, containing your feature files.  -->
                        <featuresDirectory>src/main/resources/features/</featuresDirectory>
                        <!-- Directory where the cucumber report files shall be written  -->
                        <!--<cucumberOutputDir>target/cucumber-parallel</cucumberOutputDir>-->
                        <cucumberOutputDir>target</cucumberOutputDir>
                        <!-- List of cucumber plugins. When none are provided the json formatter is used. For more
                             advanced usage see section about configuring cucumber plugins -->
                        <format>json,html,rerun</format>

                        <!--<plugins>-->
                            <!--<plugin>-->
                                <!--<name>json</name>-->
                            <!--</plugin>-->
                            <!--<plugin>-->
                                <!--<name>com.example.CustomHtmlFormatter</name>-->
                                <!--<extension>html</extension>-->
                            <!--</plugin>-->
                        <!--</plugins>-->
                        <!-- CucumberOptions.strict property -->
                        <strict>true</strict>
                        <!-- CucumberOptions.monochrome property -->
                        <monochrome>true</monochrome>
                        <!-- The tags to run, maps to CucumberOptions.tags property. Default is no tags. -->
                            <tag>
                                <!--${test.tag},-->
                                @ios_e2e,
                                @android,
                                @cover2,
                                @ios_cover1
                            </tag>
                        </tags>
                        <!-- Generate TestNG runners instead of JUnit ones. -->
                        <useTestNG>false</useTestNG>
                        <!-- The naming scheme to use for the generated test classes.  One of 'simple' or 'feature-title' -->
                        <namingScheme>simple</namingScheme>
                        <!-- The class naming pattern to use.  Only required/used if naming scheme is 'pattern'.-->
                        <!--<namingPattern>**/Parallel*IT.class</namingPattern>-->
                        <namingPattern>Parallel{c}IT</namingPattern>

                        <!-- One of [SCENARIO, FEATURE]. SCENARIO generates one runner per scenario.  FEATURE generates a runner per feature. -->
                        <!--<parallelScheme>SCENARIO</parallelScheme>-->
                        <parallelScheme>FEATURE</parallelScheme> <!--Using Feature for accomodating Scenario Outline -->

                        <!-- Specify a custom template for the generated sources (this is a path relative to the project base directory) -->
                        <!--<customVmTemplate>src/test/resources/cucumber-custom-runner.vm</customVmTemplate>-->
                        <!-- Specify a custom package name for generated sources. Default is no package.-->
                        <packageName>com.example</packageName>

                    </configuration>
                </execution>
            </executions>
        </plugin>
        <profile>
        <id>TestSuite1</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <app.config>//src//test//java//envConfig//localGridConfig.properties</app.config>
            <test.tag>@android</test.tag>
        </properties>
    </profile>