对于类的列表(我可以将其指定为包含的列表),我希望使用forkMode=always运行,因为它们会扰乱静态(遗留代码)。
对于剩余的类(我可以指定排除上面的类),我希望使用forkMode=never或其他一些配置运行。
这样做的动机是,使用forkMode=always运行测试会花费很长时间,因为类加载器必须不断地重新加载所有内容,仅仅是为了从一个测试类运行测试!
其他一些细节:-所有测试类必须在相同的配置文件中运行(例如:-P版本)
是否有可能只有多个:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>在相同的配置文件中?
发布于 2017-08-26 03:51:23
我可以想到的一种方法是定义多个执行:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<executions>
<execution>
<id>legacy-tests</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<excludes>
<exclude>**/RemainingClasses*.java</exclude>
</excludes>
<includes>
<include>**/LegacyClasses*.java</include>
</includes>
<forkMode>always</forkMode>
</configuration>
</execution>
<execution>
<id>other-tests</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<includes>
<include>**/RemainingClasses*.java</include>
</includes>
<excludes>
<exclude>**/LegacyClasses*.java</exclude>
</excludes>
<forkMode>never</forkMode>
</configuration>
</execution>
</executions>
</plugin>另一方面,您可能希望迁移到使用reuseForks and forkCount。
https://stackoverflow.com/questions/45888044
复制相似问题