システムテスト
要点
- システムテストとは、本番と同等の環境でシステム全体を動かし、機能面だけでなく性能・セキュリティなどの非機能要件まで確認するテストです。
- 総合テストが「機能要件を満たしているか」に重点を置くのに対し、システムテストは「本番でちゃんと動くか」全体を見ます。
- 現場では総合テストとほぼ同じ工程として扱われることも多い言葉です。
システムテストとは
システムテストは、本番環境に近い環境(サーバーの構成やデータ量なども含めて)でシステム全体を動かし、要件通りに機能するか、そして実際の利用に耐えられるかを確認するテストです。
🔑 身近な例試走(総合テスト)で運転動作を一通り確認したあと、実際に「本番の道路状況・交通量に近い環境」で走らせてみる最終チェックのようなものです。
総合テストとの違い
総合テストと呼ぶか、システムテストと呼ぶかは現場やプロジェクトによって使い分けが異なり、実務上はほぼ同じ意味で使われることも少なくありません。ただし、厳密には確認する観点に違いがあります。
🧩総合テスト
機能要件を満たすか
機能要件を満たすか
+非機能要件も追加
🖥️システムテスト
本番同等の環境で総合的に確認
本番同等の環境で総合的に確認
確認する非機能要件の例
システムテストでは、機能が正しく動くかに加えて、次のような「非機能要件」も確認対象になります。
⚡ 性能
大量アクセス時の応答速度
🔒 セキュリティ
不正アクセスへの耐性
🛡️ 可用性
障害発生時の挙動・復旧のしやすさ
なぜ本番同等の環境で行うのか
開発中の環境はデータ量やアクセス数が少なく、本番で起きる問題を再現できないことがあります。本番に近いスペック・データ量の環境で確認することで、リリース後に「開発時は問題なかったのに本番で遅い・落ちる」という事態を防ぎます。
開発環境のみで確認本番特有の負荷や障害を見逃しやすい
本番同等の環境で確認実際の利用条件に近い形でリスクを洗い出せる
UATへの橋渡し
システムテストで開発側として「本番でも問題なく動く」ことを確認できたら、次はいよいよ発注者・利用者に実際に使ってもらって確認する「UAT」の工程に進みます。
まとめ
システムテストは、本番同等の環境でシステム全体を動かし、機能面に加えて性能・セキュリティ・可用性といった非機能要件まで確認するテストです。総合テストと重なる部分も多いですが、「本番で実際に使えるか」という視点がより強く求められます。
関連トピック: