回帰テスト(regression Testing)

変更により、ソフトウェアの未変更部分に欠陥が新たに入り込んだり、発現したりしないことを確認するため、変更実施後、すでにテスト済みのプログラムに対して実行するテスト。ソフトウェアや、実行環境が変わる度に実施する。

Present in sylabi

使用例

チームが決済計算の欠陥に対する修正をリリースした後、以前失敗したテストを再実行し(これが再テストです)、その後チェックアウトフローの残りをカバーする完全な回帰テストスイートを実行します。回帰テストは、割引ロジックや送料計算などの変更されていない領域が、修正後も正しく動作することを検証します。継続的インテグレーション(CI)では、回帰テストは通常、コードが変更されるたびに自動的に実行されます。

よくある質問

回帰テストと再テストの違いは何ですか? 再テストは、前回失敗した特定のテストケースを再実行して、修正が機能したことを検証します。回帰テストは、以前にテスト済みで変更されていない機能に対してテストを実行し、変更によって新しい欠陥が導入されていないことを確認します。修正後は両方とも必要です。

回帰テストはいつ実施しますか? ソフトウェアまたはその環境が変更されるたびに実施します。新機能、バグ修正、設定変更、インフラストラクチャの更新などです。変更が大きいほど、回帰テストのカバレッジが重要になります。

回帰テストはどのくらい実施すれば十分ですか? 変更のリスクをカバーできるだけ実施します。チームは多くの場合、重要経路に対するスモークテストから始め、変更の影響範囲と利用可能なテスト自動化に基づいて範囲を拡大します。

回帰テストはテストレベルですか? 回帰テストはテストタイプであり、レベルではありません。コンポーネントテストからシステムテストまで、どのレベルでも実行でき、複数のフェーズに登場することもよくあります。

関連用語

  • re-testing — 修正を検証するために以前失敗したテストを再実行すること
  • confirmation testing — 欠陥が実際に修正されたことを検証すること
  • integration testing — 統合されたコンポーネント間のインターフェースをテストすること
  • system testing — 統合された完全なシステムをテストすること
  • test automation — ソフトウェアを使ってテストを実行し、頻繁な回帰テスト実行を可能にすること
  • defect — 回帰テストスイートが検出するように設計された欠陥

Learn more

A systematic review on regression test selection techniques by Emelie Engström, Per Runeson, Mats Skoglund in Information and Software Technology, Elsevier (2010) - 449+ citations
Comprehensive systematic review of regression test selection techniques with qualitative analysis and empirical evaluations

An empirical study of regression test selection techniques by Todd L. Graves, Mary Jean Harrold, Jung-Min Kim, Adam Porter, Gregg Rothermel in ACM Transactions on Software Engineering and Methodology (TOSEM) (2001) - 663+ citations
Controlled experiment examining costs and benefits of five regression test selection techniques with empirical data on trade-offs

A study of effective regression testing in practice by W. Eric Wong, Joseph R. Horgan, Saul London, Hiralal Agrawal in Proceedings of the Eighth International Symposium on Software Reliability Engineering (ISSRE) (1997) - 701+ citations
Highly influential early work establishing practical foundations for regression testing ensuring changes don't affect unchanged features

Regression Testing: The Ultimate Guide (March 2025)
Comprehensive guide covering regression testing basics, 8-step process, do's and don'ts, challenges, manual vs automated testing, and strategy design

Recommend more content related to this term