2016-06-24 21 views
3

Java WebアプリケーションでSeleniumとの統合テストを行いたいとします。 Antスクリプトを使用して現在ビルドするためにJenkinsをセットアップしました。Jenkinsの統合テスト

私が理解しているように、Webアプリケーションは、Selenium webdriver(localhost上)でテストする前に、実行中のサーバーにビルド、パッケージ化、デプロイする必要があります。私はこれをローカルで行うとうまく動作します。しかし、私のJenkinsマシンでは、そこにwarファイルをデプロイしてから、テストを正しく実行するために、Jenkins以外の別のサーバーを起動する必要があります。問題は、デプロイメントがビルド後のアクションであり、その後にテストを実行できないことですか、それともできますか?

答えて

3

Dockerをビルド、デプロイ、およびテスト環境用に使用しないのはなぜですか?

これは、Jenkinsサーバー内のWebアプリケーションの構築とテストに必要な分離を提供します。

Dockerfilesを使用して独自のコンテナイメージを作成することで、プロジェクトの依存関係に合わせてさまざまな環境を定義できます。コンテナは非常に軽量の仮想マシンと考えることができます。あなたのケースでは、あなたのWebアプリケーションを構築し、テストするために、JDKとSelenium Webdriverがインストールされたマシンが少なくとも必要になると思います。

DockerのコンテナレジストリーであるDockerhubには、独自のものを作る代わりに使用できる画像がたくさんあります。ドッカーとジェンキンスと継続的インテグレーションを使い始める上での素敵なホワイトペーパーについては

は助けhere

+0

感謝を行きます! – user2908112

1

あなたは間違いなく実行できます。各ステップごとに異なるジョブを使用できます。ビルド前、ビルド、ポストビルド。ジェンキンスは非常に柔軟なツールです。 1つのジョブですべてのステップを実行することについて心配する必要はありません。私はあなたが展開のための1つの仕事を書くことをお勧めし、成功に応じて別のプロジェクト、すなわちあなたの健全性テストの仕事を実行するためのビルドをトリガすることができます。