ソフトウェアリグレッション
リグレッションがエンドユーザーに現れるのを避ける目的で、ソフトウェアに変更が加えられた後、開発者はリグレッションテストを定期的に実行する。こうしたテストには、ローカルのリグレッションを発見するための単体テストと、リモートのリグレッションを発見するための統合テストがある。回帰テストの技法では、既存のテストケースを活用して、テストケースの作成に伴う労力を最小限に抑えることがよくある。しかし、こうした既存のテストは量が多いため、多くの場合、テストケースの優先付けなどの技法を使用して代表的なサブセットを選択する必要がある。
性能のリグレッションを検出するために、後続の変更後のレスポンスタイムとリソース使用量のメトリクスを計測するソフトウェアパフォーマンステストが定期的に実行される。機能の回帰テストとは異なり、パフォーマンステストの結果は分散する可能性がある。つまり、パフォーマンス測定値のばらつきにより、結果はテスト間で異なる場合がある。そのため、パフォーマンス数値の変化がリグレッションを構成するかどうかは、経験とエンドユーザーからの要求に基づいて決定する必要がある。この決定を支援するために、統計的有意性検定や変化点検出(英語版)などのアプローチが使用されることもある。