Jenkins と Selenium テストを使用した Web 開発プロジェクト (私の場合は PHP) の正しいビルド フローは何ですか?
私は一般的にCIにはかなり慣れていませんが、一般的にJenkinsでSeleniumテストを(Saucelabs経由で)統合する方法を調べていました。
私の混乱は、ジェンキンスがそれを実行できるように、変更をリモートサーバーにいつデプロイするかということです.Webサイトの場合、次のようにする必要があると言う私の仮定は正しいですか?
- 変更をブランチにプッシュする (つまり、開発する)
- ジェンキンスは開発への変更プッシュを検出します
- jenkins が最新の変更を取り込みます
- ジェンキンスはユニットテストの実行を開始します
- 単体テストに合格すると、jenkins は変更を Web サーバー (ステージング / CI 環境) にデプロイします。
- その Web サーバーに変更が加えられると、Jenkins はそのサーバーで Selenium テストを実行します。
セレンスクリプトはサーバーなどに触れる必要があるため、変更を別の環境にデプロイする必要があると思います。
Web サイトと同じサーバーで Jenkins サーバーを実行した場合、デプロイ手順を省略できますか?