【发布时间】:2017-08-14 14:04:26
【问题描述】:
我想知道为什么它不能正确工作。我想要 itTest 配置文件,它将通过 Maven 开始集成(故障安全插件)和单元(surefire 插件)。 我的配置:
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>${unit-tests.skip}</skip>
<excludes>
<exclude>**/*IT.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<skip>${integration-tests.skip}</skip>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
简介
<profile>
<id>itTest</id>
<properties>
<propFile>profiles/itTest.properties</propFile>
<spring.profile>itTest</spring.profile>
<integration-tests.skip>false</integration-tests.skip>
<unit-tests.skip>false</unit-tests.skip>
</properties>
</profile>
结果:两个测试都被跳过...即使我将配置文件或硬编码的跳过更改为 false,它仍然不起作用。
【问题讨论】:
-
首先,maven-surefire-plugin 中的 exclude 是多余的,因为它是 maven-surefire-plugin 中的默认值。 maven-failsafe-plugin 中的 include 也是多余的,因为它是 maven-failsave-plugin 中的默认值...
-
你真的用
mvn -P itTest激活了个人资料吗? -
是的,我通过 Intellij 界面来执行此操作,我在其中声明配置文件和命令,其中命令验证但如果我更改它为 true 并且单元测试也可能是另一个命令,如 install
-
如果同时删除
excludes和includes块会怎样? -
没什么变化,但我发现了有趣的事情。当我使用硬编码值运行
clean install时,例如 false/true 测试是否正在运行,但是当使用任何配置文件运行时,它们会被跳过
标签: java maven unit-testing