“ -Dmaven.test.skip.exec”与“ -Dmaven.test.skip = true”和“ -DskipTests”之间有什么区别?

问题描述 投票:16回答:3

我不确定maven指令-Dmaven.test.skip.exec-Dmaven.test.skip=true -DskipTests之间有什么区别。两者似乎都抑制了测试周期。

maven
3个回答
24
投票

“ maven.test.skip.exec = true”测试被编译但未执行。

“ maven.test.skip = true”不会编译或执行测试。

“-DskipTests”是[M0.test.skip.exec = true“的same


16
投票

system property -Dmaven.test.skip=true将执行以下操作:

因为maven.test.skip禁用了运行测试和编译的功能测试。

不建议使用-Dmaven.test.skip.exec的系统属性-DskipTests=true

将其设置为“ true”可跳过正在运行的测试,但仍对其进行编译。


3
投票

请参阅参考资料:http://maven.apache.org/surefire/maven-surefire-plugin/examples/skipping-test.html

提取:

跳过测试

要跳过运行特定项目的测试,请设置skipTests属性为true。

<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
          <skipTests>true</skipTests>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>

您还可以通过执行以下命令,通过命令行跳过测试以下命令:

mvn install -DskipTests

如果绝对必须,也可以使用maven.test.skip属性跳过编译测试。 maven.test.skip被Surefire荣幸,故障安全和编译器插件。

mvn install -Dmaven.test.skip=true
© www.soinside.com 2019 - 2024. All rights reserved.