maven-surefire-plugin不适用于个人资料

问题描述

我在带有surefire-maven-plugin和junit连接的POM中配置了配置文件,以仅按配置文件运行特定的测试。例如:

mvn clean test -Pgroup1 --also-make -DfailIfNoTests=false

它在以下版本中可以正常工作:

<maven-surefire-plugin.version>2.22.1</maven-surefire-plugin.version>
<junit.version>4.12</junit.version>

但是当我尝试升级它们时,它们将停止正常工作:

<maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
<junit.version>4.13</junit.version>

在这种情况下,mvn test总是运行所有测试,因为我不会在命令行中设置配置文件。 我的配置文件配置是:

    <profiles>
        <profile>
            <id>default</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration>
                            <includes>
                                <include>**/unit/*Test.java</include>
                            </includes>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>group1</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration>
                            <excludes>
                                <exclude>**/unit/**</exclude>
                            </excludes>
                            <groups>com.Group1</groups>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>group2</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration>
                            <excludes>
                                <exclude>**/unit/**</exclude>
                            </excludes>
                            <groups>com.Group2</groups>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        ......................
    </profiles>

每个测试类都已连接链接到个人资料的接口:

@Category(Group1.class)
@RunWith(JUnitParamsRunner.class)
public class Group1Test {

使用“认”配置文件和“ activeByDefault”属性也没有结果。有任何解决方法的想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)