繁体   English   中英

如何运行单独的测试?

[英]How do I run separate tests?

如何在特定模块中运行带有测试的单独文件夹?

我的模块:

    <modules>
        <module>common</module>
        <module>foo</module>
        <module>bar</module>
</modules>

每个模块都有一个2-3个测试文件夹。 我需要在模块栏中运行测试文件夹“ utils”。

我为团队“ MVN测试”做了限制:

<plugins>

  <plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
      <excludes>
        <exclude>**/utils/**</exclude>
      </excludes>
    </configuration>
    <executions>

      <execution>
        <id>surefire-itest</id>
        <phase>integration-test</phase>
        <goals>
          <goal>test</goal>
        </goals>
        <configuration>
          <excludes>
            <exclude>none</exclude>
          </excludes>
          <includes>
            <include>**/utils/**</include>
          </includes>
        </configuration>
      </execution>
    </executions>
  </plugin>

</plugins>

mvn test-运行除“ utils”以外的所有测试。 mvn integration-test-运行所有测试。

现在,我只需要启动“ utils”。 我该如何解决这个问题?

选项1是使用各种配置文件通过mvn test运行不同的surefire执行(以及不同的包含和排除)。

选项二是将故障安全插件mvn verify一起使用。 这使得仅运行单元测试或单元测试和集成测试变得容易。 仅运行集成测试是可行的,但是很尴尬。

不要将surefire插件与mvn integration-test 通常最好不要使用mvn integration-test 有关原因,请参见Maven生命周期简介

为utils中的测试创建另一个,并将其绑定到您要在其中运行的阶段。

如果您使用的是JUnit,也可以使用类别对测试进行分组。

我找到了解决此问题的方法:

mvn测试-运行除“ utils”以外的所有测试mvn测试-P utilsTest-仅运行测试“ utils”

<profiles>
    <profile>
        <id>utilsTest</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <exclude>none</exclude>
                        <includes>
                            <include>**/utils/**</include>
                        </includes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>

    <profile>
        <id>test</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <excludes>
                            <exclude>**/utils/**</exclude>
                        </excludes>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM