如何将 excludedGroups 参数添加到 Maven 命令

How to add excludedGroups argument to maven command

我的 parent/pom.xml 文件中有 2 个 Maven 配置文件。

第一个配置文件运行只有某个组。

<configuration>
<groups>com.XXXXXXX.common.daily.util.UnitTest</groups> 
</configuration>

第二个配置文件 运行 所有测试。

我想在 maven 命令上使用一个参数 在将排除的第二个配置文件中 这个:

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                <groups>com.XXXXXX.common.daily.util.UnitTest</groups> 
                   <skipTests>${skipFastTests}</skipTests>
                </configuration>
            </plugin>

我不想更改第二个配置文件的 pom.xml。

我想知道如何为 excludedGroups 添加附加参数?

mvn test -P=profile2   ______

在 surefire 或 failsafe 中,添加 <excludedGroups>${excluded.tests}</excludedGroups> 然后将此变量 excluded.tests 定义为在 @Category 中用于标记要绕过哪些测试的接口。

最后,当运行在命令行中排除测试时,覆盖这个值。您似乎排除了 com.XXXXXX.common.daily.util.UnitTest。在您的个人资料中将其定义为空并用它覆盖;或默认排除但用空覆盖。

您可以在 pom 文件中排除插件配置中的类别。但是如果你想通过 mvn 命令行动态排除给定的组,你可以通过使用 'excludedGroups' 参数来实现,如下所示:

mvn test -DexcludedGroups=com.group.ExcludedCategory

http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#excludedGroups