テストはレベルに応じて単体・結合・システム・受入の段階を踏みます。回帰テストの重要性も理解しましょう。
テストにもレベルがあるんだ!
あたし、全然知らなかった!
そうなのよ、4段階あるの。
単体テスト (Unit) → 結合テスト (Integration) → システムテスト (System) → 受入テスト (Acceptance) ね。
つまり、単体は関数・メソッド単位、結合は複数モジュール、システムは全体、受入はユーザ視点ですね。
下から上に向かって範囲が広がるイメージで合っていますか?
回帰テストって何ですかぁ?
すみれ、初めて聞きましたぁ…
回帰テスト (リグレッションテスト) は、改修後に「既存機能が壊れていないか」を確認するテスト。
CIで自動化することが多いわ。
非機能テストも重要。
性能テスト・負荷テスト・セキュリティテスト・ユーザビリティテスト・互換性テスト。
テスト戦略として「テストピラミッド」も有名。
テストピラミッド: 単体テスト多 / 結合テスト中 / E2E (UI) テスト少、というバランスで効率的なテストを実現。
確認クイズ
プログラム改修後に、既存機能が引き続き正しく動作することを確認するテストを何と呼ぶか。
- スモークテスト
- 回帰テスト
- 受入テスト
- セキュリティテスト
こたえを見る
正解: 2. 回帰テスト
回帰テスト (リグレッションテスト) は、変更後に既存機能が壊れていないかを確認するテストです。CIパイプラインで自動実行するのが現代の定番です。