プラグインを作成せずにMavenビルドのライフサイクルをカスタマイズすることは可能ですか?テストを実行せずにプロジェクトをパッケージ化するようにカスタマイズしてから、テストを実行したいと思います。背景には、テストがHTTPUnitで実行されており、完全に構築されたWebアプリケーションディレクトリ構造が必要です。
質問する
211 次
3 に答える
3
khmarbaise で提案されているように、maven-surefire-plugin の拡張である maven-failsafe-plugin を使用できます。
Maven ライフサイクルには、目的に最適な 4 つのフェーズがあります。
pre-integration-test
統合テスト環境をセットアップするため。integration-test
統合テストを実行するため。post-integration-test
統合テスト環境を破棄するため。verify
統合テストの結果を確認するため。
一般的に言えばpre-integration-test
、サーバーを起動するときに
例えば:
<executions>
[...]
<execution>
<id>start-jetty</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run-exploded</goal>
</goals>
<configuration>
<scanIntervalSeconds>0</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>
</execution>
<execution>
<id>stop-jetty</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
このプラグインをHudsonで使用しています。詳細については、Maven Build Customization - Chapter 5を参照してください。
于 2014-11-06T16:55:08.530 に答える
1
統合テストを書いているようです。
maven-failsafe-pluginを使用できます。このプラグインは、 maven ビルド ライフサイクルの統合テスト フェーズ(パッケージ化フェーズの後) でデフォルトで実行されます...
于 2012-08-28T14:21:08.250 に答える
1
これらの目的のためには、まさにそのようなことを意図した統合テストフェーズが必要です。パッケージ化段階の後ですが、インストール/展開段階の前です。これは、maven-failsafe-pluginを使用して実現できます。ここで完全な例を見つけることができます。
于 2012-08-28T14:21:19.450 に答える