Maven 中跳过单元测试方法

简介

Maven 构建生命周期为我们提供了对项目执行各种操作,例如验证,清理、打包、测试和部署项目。

而有时候我们需要跳过单元测试,例如,在处理新模块时,还有未通过的单元测试时。在这些情况下,我们可以在打包时跳过测试以避免编译和运行测试时发生的时间。

跳过单元测试的几种方法

  1. 通过在 maven 命令中使用 -DskipTests 参数跳过测试的执行。
  2. 通过在 maven 命令以执行阶段时使用 maven.test.skip 属性跳过测试的编译。
  3. 通过在 pom.xml 中设置 true 跳过测试元素属性。
  4. 通过在 pom.xml 中使用 surefire 时,通过在 pom.xml 的插件标签中使用 exclude 元素和要排除的类的名称来排除一些测试类。
1. DskipTests 参数

执行编译测试类,但是跳过执行测试过程。

mvn clean package -DskipTests
2. maven.test.skip 属性

完全跳过测试编译,可以在 maven 命令中使用 maven-test-skip 属性。

mvn package -Dmaven.test.skip=true
3. 跳过pom中的测试元素

如果您希望跳过某个项目的测试,您可以通过以下方式在项目的 pom.xml 文件的插件标记中将 skipTests 属性指定为 true。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>3.0.0-M4</version>
    <configuration>
        <!--跳过测试-->
        <skipTests>true</skipTests>
    </configuration>
</plugin>
4. 默认跳过,然后在必要时覆盖它
  • 在 pom.xml 文件中定义一个属性变量并 初始化为 true , 并在跳过测试元素的节点上指定这个变量。
  • 当需要执行测试时,在命令行中为 maven 执行的命令中指定属性值来覆盖此属性的值。
<project>
  <properties>
    <defaultValueOfSkip>true</defaultValueOfSkip>
  </properties>
  
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.0.0-M4</version>
        <configuration>
          <skipTests>${defaultValueOfSkip}</skipTests>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

那么,当有必要测试项目,可以这样做,只需在我的命令中通过以下方式将属性 defaultValueOfSkip 的值设置为 false。

mvn package -DdefaultValueOfSkip=false
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Whitemeen太白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值