我有一个大约有500个测试(单元和大部分是集成)的Spring Boot应用程序。
当我第二次单击开始在IntelliJ中运行测试时->运行所有测试-测试运行大约10-15分钟。
当我尝试在IntelliJ终端中使用“ mvn verify -P itest”运行测试时,执行时间约为一个小时。这是因为此命令在每个类上启动和停止Spring Test Runner Server(这不是我想要的结果)。
IntelliJ第二次单击->运行所有测试仅将其启动一次。 我们的Jenkins Job正在使用“ mvn verify -P itest”运行测试,因此我的问题是如何更改此行为,以仅启动和停止一次测试运行程序(使用此“ mvn verify -P itest”命令)。 / p>
itest是我们pom.xml中的配置文件,其中包含包含集成测试的类(使用Maven故障安全插件)
这是基础抽象集成测试类的注释
char * decrypt(char* pt)
{
char* result=malloc(20);
char *start = result;
while(*pt)
{
*result=*pt+3;//incrementing by 3 alphbets and copying in reslult
pt++;
result++;
}
*result='\0';
return start;
}
我发现这篇文章可能与我的问题类似,但这并不能解释IntelliJ给我的行为。
Reset Spring-Boot During Integration Tests
非常感谢
答案 0 :(得分:0)
我发现了为什么会这样。我的pom文件中有一个设置说明 “ reuseForks”的maven failsafe属性为false。
我将其更改为true,现在可以正常工作了。
Intellij的工作方式相同-它在所有测试中重复使用分叉。
了解更多