私の仕事では、現在Aegisバージョン管理/SCMを使用しています。構成方法、テストの数があり、変更を統合する前に、次のことを強制的に実行します。
- テストのフルセットが実行されている必要があります。
- すべてのテストに合格している必要があります。
テスト駆動開発(TDD)では、これらは賢明な要件のように思われます。しかし、他のバージョン管理システムでこれを行う方法については聞いたことがありません。(現在、切り替える予定はありませんが、将来、Aegisを使用せずに切り替える方法を知りたいです。)
これを実行できるVCS(分散型または非分散型)に興味があります。また、これを可能にする既存のVCSへのプラグイン/拡張機能にも興味があります。できればオープンソースソフトウェア。
ETA:わかりました。通常は、VCS +継続的インテグレーションソフトウェアを使用するようです。テストの実行は、個別の手順ではなく、ビルドの一部として自動化されています。私が正しく理解していれば、それでもテストに合格しないコードをコミットすることができますが、それについて通知を受けるだけです-そうですか?それを統合/コミットすることを妨げるものはありますか?