私はJenkinsのようなCIサーバーについて少し読んでいますが、疑問に思っています。
確かに、クラスが5つと単体テストが10つしかない小さなプロジェクトの場合は、実際には必要ありません。
ここでは約1500のユニットテストがあり、(古いCore 2 Duoワークステーションで)約90秒で合格します(実際に「ユニット」をテストしているため、非常に高速であるため)。私たちのルールは、テストが失敗するとコードをコミットできないということです。
したがって、各開発者はリグレッションを防ぐためにすべてのテストを開始します。
明らかに、すべての開発者が常にすべてのテストを起動するため、ある開発者が別の変更を(ある場合)プルするとすぐに、変更の競合によるエラーをキャッチします。
それでもまだはっきりしていません。JenkinsのようなCIサーバーをセットアップする必要がありますか?それは何をもたらすでしょうか?
速度向上に役立つだけですか?(私たちのケースでは問題ではありません)
古いビルドを再作成できるので便利ですか?(ただし、Mercurialでこれを行うには、古いリビジョンをチェックアウトします)
基本的に私はそれが役立つことを理解していますが、正確な理由はわかりません。
上記で提起したポイントを考慮した説明は大歓迎です。