システムテスト

システムテストとは、開発したシステム全体が、要求された仕様や機能を満たしているか、問題なく動作するかを検証するためのテストです。単体テストや結合テストで個々のモジュールや連携動作を確認した後に、システム全体を統合してテストを行います。

システムテストの目的

  • 要件・仕様との整合性確認: システムが、ユーザーの要求や仕様書に定義された機能、性能、品質を満たしているかを確認します。
  • 全体動作の検証: 全てのモジュールが統合された状態で、システム全体が正しく動作するかを確認します。
  • 非機能要件の検証: 性能、セキュリティ、信頼性、可用性、保守性など、機能以外の要件(非機能要件)を満たしているかを確認します。
  • ユーザービリティの検証: システムがユーザーにとって使いやすいか、分かりやすいかを確認します。
  • 潜在的な問題の発見: 単体テストや結合テストでは発見できなかった、システム全体で発生する問題を発見します。

システムテストの種類

システムテストには、様々な種類があります。

  1. 機能テスト: システムの機能が正しく動作するかを確認するテスト。
  2. 性能テスト: システムが負荷に耐えられるか、パフォーマンス要件を満たしているかを確認するテスト。
  3. 負荷テスト: 高負荷状態でのシステムの挙動を検証するテスト。
  4. ストレステスト: システムの限界性能を検証するテスト。
  5. セキュリティテスト: システムのセキュリティ脆弱性を発見するテスト。
  6. ユーザビリティテスト: システムの使いやすさを検証するテスト。
  7. 互換性テスト: 異なる環境(OS、ブラウザ、デバイスなど)でシステムが正しく動作するかを確認するテスト。
  8. 回復テスト: 障害発生時のシステムの復旧能力を検証するテスト。