Mavenパッケージングタイプ「POM」を使用した実行中のテスト
-
27-10-2019 - |
質問
POMがパッケージングタイプ「POM」に設定されているときに、ユニットテストを実行する問題がいくつかあります。最初はこのプロジェクトに必要な目標はないと言っていたので、Maven-Surefire-Pluginをpom.xmlに追加して、テストフェーズをMaven-Surefire-Pluginテストの目標に結合しました。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.9</version>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
これで、SureFireプラグインが実行されていますが、実行するテストはないと書かれています。パッケージタイプをJARに変更してMVNテストを実行すると、テストファイルが選択されます。
MVNテスト-Xを実行すると、「testSourcedirectory = c: dev dsl src test java」と表示されます。これは正しい場所です。テストの場所は、パッケージングタイプの「POM」の「jar」とは異なりますか?追加してみました
<configuration>
<testSourceDirectory>src/test/java</testSourceDirectory>
</configuration>
SureFireプラグインには、まったく役に立ちませんでした。
解決
デイブがコメントしたように、あなたが使用している場合 pom
パッケージング、次のライフサイクル目標のみを実行します。参照する これ 関連するMavenドキュメント。
- パッケージ
- インストール
- 配備
他の目標を実行するために必要な場合は、明示的に指定する必要があります。例えば、
mvn clean compiler:testCompile surefire:test
所属していません StackOverflow