ヒャッハー!ふっくら太郎です。

ソフトウェアテストやその他諸々について、適当に書いています。

「正常系」・「準正常系」・「異常系」テストについて、まとめてみました。

こんちは。ふっくら太郎です。

先日、「正常系」・「準正常系」・「異常系」テストについて、調べることがあり、

理解した内容を書き残します。

「準正常系」と「異常系」の違いがよく分からない人には、役に立つかも知れません。 

 

 

正常系・準正常系・異常系テストとは?

簡単に、各テストを定義すると次のようになります。

正常系テスト

  • テスト対象が、定常状態で仕様通り動作することを確認するテスト。

準正常系テスト

  • テスト対象が、異常発生時に異常処理仕様通り動作することを確認するテスト。

異常系テスト

  • テスト対象が、仕様外の異常が発生した際に、どの様に振る舞うのかを確認するテスト。

 

各テストを分類すると、以下の図のようになります。

f:id:hukkura_tarou:20170907213316p:plain

「正常ケース」は、「正常系」で確認します。

「異常ケース」は、「準正常系」と「異常系」で確認します。

「準正常系」では、異常処理仕様で想定している異常動作を確認し、

「異常系」は、仕様外の異常動作を確認します。

 

「正常系」、「準正常系」は、仕様との適合姓を確認するテストのため、

各テストレベルの目的に合わせて実行されます。

一方、「異常系」は、仕様で想定していない内容についてテストするため、

開発レビューやデバック、単体テストなど、開発プロセスの上流での実行が

求められます。

 

結合テストシステムテストなど後段のテストで実行した場合、

不具合が見つかると、仕様検討→再実装まで遡って修正が必要になり、

リスクが非常に高いためです。