統合テスト用のインフラストラクチャをセットアップしたいと考えています。現在、maven を使用して tomcat をブートストラップし、httpunit テストを実行しています。しかし、現在のソリューションには欠点がほとんどありません。
- データベースにコミットされた変更は、テストが失敗した場合、最後に手動でロールバックする必要があります。
- 統合テストでコード カバレッジを実行するのは簡単ではありません (ソナーを使用しています)。
私の目標は次のとおりです。
- テスト間の自動ロールバックを許可する (できれば String @transaction と @rollback を使用)
- シンプルでわかりやすいコード カバレッジ
- 外部からではなく、JUnit からシステムをブートストラップする @RunWith を使用する
- ライブ サーブレットと JavaScript とのやり取り (httpuinit からセレンへの切り替えを検討しています…)
- 妥当な実行時間 (少なくとも既存の実行時間より長くない)
上記の目標は、私には合理的であり、多くの Java/J2ee プロジェクトに共通しているように見えます。Arquillian と Arquillian Spring Framework Extension コンポーネントを使用して、これらの目標を達成することを考えていました。https://github.com/arquillian/arquillian-showcase/も参照してください。
- Arquillian とArquillian Spring Framework Extensionを使用した経験のある人はいますか?
- 問題のベスト プラクティスと学んだ教訓を共有できますか?
- 上記の代替アプローチを提案できる人はいますか?