回帰テスト
回帰テストは、ソフトウェアの既存の機能に変更が加えられた場合、またはソフトウェアにバグ修正がある場合に実行される。回帰テストは複数のアプローチで実現できる。すべてのアプローチをテストする場合、ソフトウェアに加えられた変更が、変更されていない既存の機能に影響を与えていないことを確認できる。
ソフトウェア開発ライフサイクルが非常に短く、リソースが不足しており、ソフトウェアへの変更が非常に頻繁であるアジャイルソフトウェア開発では、回帰テストによって多くの不要なオーバーヘッドが発生する可能性がある。
サードパーティのブラックボックスコンポーネントを使用する傾向があるソフトウェア開発環境では、サードパーティコンポーネントの変更がシステムの他の部分に干渉する可能性があるため、回帰テストの実行は難しい場合がある(そしてサードパーティで回帰テストを実行するパーティコンポーネントは不明なエンティティであるため、困難な場合がある)。