Web系開発メモ

Java, C#, HTML, CSS, JavaScript のことなどを書いてます。

Mavenでテストをスキップする方法(単体テストのスキップ)

Maven のビルドで、単体テストをスキップする方法を書いていきます。

1. テストの実行をスキップする方法

テストの実行をスキップするには、プロパティ skipTests を使います。

mvn package -DskipTests

下のように、true を設定しても同じ動作になります。

mvn package -DskipTests=true

2. テストのコンパイルもスキップする方法

テストクラスのコンパイルもスキップしたい場合は、プロパティ maven.test.skip を使います。

mvn package -Dmaven.test.skip=true

3. スキップをデフォルトにする方法

pom.xmlプラグイン設定で、テストのスキップをデフォルトにできます。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  ...
  <properties>
    ...
    <skipTests>true</skipTests>
  </properties>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.0.0-M7</version>
        <configuration>
          <skipTests>${skipTests}</skipTests>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

テストを実行したい場合は、プロパティの値を false にします。

mvn package -DskipTests=false

参考文献

Maven Surefire Plugin - Skipping Tests