受け入れテスト(アクセプタンステスト)とは、開発した機能がビジネス要件やユーザーストーリーを満たしているかを、プロダクトオーナーやステークホルダーの視点で検証するテスト手法である。
単体テストや機能テストが「コードが正しく動くか」を検証するのに対し、受け入れテストは「ビジネスが求めるものになっているか」を検証する。バグがなくても、要件と異なる挙動をしていればリリースはできない。
受け入れテストの記述は自然言語に近い形式をとることが多い。「管理者がログインして従業員一覧を開くと、自テナントの従業員だけが表示される」のように、ユーザーの行動と期待結果をシナリオとして記述する。Gherkin(Given-When-Then)構文はその代表的なフォーマットだ。
手動で実施する受け入れテストもあれば、Playwright 等で自動化するケースもある。ATDD(受け入れテスト駆動開発)では、受け入れ基準を先に定義し、それを自動テストとして実装してから開発に入る。手動テストに頼ると実行頻度が下がりがちなため、クリティカルなシナリオは自動化するのが実務上の定石になっている。
スクラム開発では、スプリントレビューで受け入れテストの結果を確認することが多い。プロダクトオーナーが「この機能は受け入れ可能か」を判断する材料になるため、テストシナリオはスプリント計画時にチームで合意しておくのが理想的だ。


E2E テスト(End-to-End テスト)とは、ユーザーの操作を起点にブラウザや API を通じてシステム全体を通過させ、期待どおりの結果が得られるかを検証するテスト手法である。

機能テスト(フィーチャーテスト)とは、特定の機能やユースケース単位でシステムの振る舞いを検証するテスト手法である。単体テストより広い範囲を対象とし、複数のモジュールが連携して正しく動作するかを確認する。

ATDD(Acceptance Test-Driven Development)とは、開発着手前に受け入れテストの基準をチーム全体で定義し、そのテストを自動化してから実装を進める開発手法である。


PoC開発とは?概念実証の基本から費用・進め方・失敗しない外注先選びまで
単体テスト(ユニットテスト)とは、関数やメソッドなどプログラムの最小構成単位を個別に検証するテスト手法である。外部依存をモックに置き換え、対象のロジックだけを高速に確認できる。