継続的インテグレーションの概念
- 前書き
- キーワード
- いくつかの一般的な統合サーバー
- 便利なリンク
- ノート
前書き
継続的インテグレーションプロセスの主な目的は、開発中のアプリケーションでソースコードを更新するたびに退行や異常が発生しないことを確認することです。
継続的統合はツールではなく、むしろeXtreme Programming(XP)の実用的な成果です。
同じアプリケーションプログラムで作業している開発者は、できるだけ頻繁に再初期化します。 これにより、統合ごとに、アプリケーションの動作を自動的に監視するプラットフォームに基づくプロセスが起動され、エントリ時に異常が検出されます。
開発者にとって最も難しいのは、更新の実際の影響をアプリケーションのすべての基本機能に反映させることです。 アプリケーションテストはクローン環境で行われるため、継続的な統合により、開発者はアプリケーションについてより広い視野を得ることができます。
キーワード
- 構築:コンパイルおよび作成に必要なすべてのステップ、テストの開始に必要な成果物(機能、単位、HMIなど)。
- コミット:この操作により、構成管理ツール(SVNなど)を介して、開発者のマシンのローカル作業ディレクトリにある既存のソースコードに対する更新を検証できます。
- 更新:この操作により、ローカルディレクトリの構成管理ツールのリポジトリから更新することができます。
- チェックアウト:これは、開発中のプロジェクトのバージョンを構成マネージャーのリポジトリーからローカル作業ディレクトリーに抽出する操作です。
一般的なシナリオ
- 開発者は設定マネージャのリポジトリにコミットしました。
- 統合サーバーはコミットを検出し、Checkoutがオペレーションのコンパイルとテストを開始するようにします。
- 障害が発生した場合は、プロジェクトマネージャや開発チームに通知されます。
- エラーに関心のある開発者は、構成管理リポジトリを更新し、異常を修正する。
継続的インテグレーションサーバーの一般的な機能
- 継続的インテグレーションサーバーは、主に次のことを可能にします。
- Configuration Managerのチェックアウト操作を行います。
- ソースコードのコンパイル
- アプリケーションアーカイブの作成(Ear、Jar、War、...)
- テストマシンへのアーカイブの配置
- テストスイートの実行:JUnit、Cactus、ソースコード監査、GUIテスト、機能テスト
- 結果の通知:メール、RSS。
- 統計レポートの作成
- 他のツールとの統合
いくつかの一般的な統合サーバー
- Cruise Control:オープンソースで、アプリケーションとJ2EEアプリケーションをテストするための無料の、有名で文書化されたもの。 ネット。 連続積分のリファレンスです。
- ハドソン氏:オープンソースで無料です。最近、Cruise ControlがJ2EEアプリケーションをテストできることが一般的になりました。 SUNによって使用されます。
- 継続:Apache Foundationによってサポートされている無料のオープンソース。
- 竹:オープンソースですが、購入する必要があります。
便利なリンク
- //www.atlassian.com/software/bamboo/
- //msdn.microsoft.com/en-us/library/ms364045(VS.80).aspx
- //c2.com/cgi/wiki?ContinuousIntegration
- //www.extremeprogramming.org/rules/integrateoften.html
- //en.wikipedia.org/wiki/Continuous_integration
- //martinfowler.com/articles/continuousIntegration.html
ノート
このヒントをくれたwjaouadiに感謝します。