テストのプロセス

というわけで、「はじめて学ぶ ソフトウェアのテスト技法」を読み直しているので、メモ*1

テストとは?

IEEE 標準規格 610.12-1990による定義。

ある特定の条件下でシステムまたはコンポーネントを操作するプロセスであり、その結果を観察または記録して、システムまたはコンポーネントのある側面を評価すること

テストの成熟度

テストに関して以下の5つの成熟度(レベル)がある

  • レベル0ーテストはデバッグと同等
  • レベル1ーテストとはシステムが動くことの確認
  • レベル2ーテストとはシステムが動かないことの確認
  • レベル3ーテストとはシステムのリスクを減らすこと
  • レベル4ーテストとはシステムの品質を高める為の規範

テストケース

テストの実装。テストケースは、適当に作るのではなく、正しく「設計」することが必要。

  1. 入力
  2. 出力
  3. 実行の手順

すべて曖昧であってはテストケースとして不完全。

テストの分類

  1. ブラックボックステスト
  2. グレーボックステスト
  3. ホワイトボックステスト

ホワイトボックステストは、テスト対象の内部構造にもとづいて行い、網羅率(カバレッジ)が1つの指針。グレーボックステストは、ある程度の内部設計を踏まえた上でのブラックボックステスト

テストのレベル

  1. 単体テストユニットテスト
  2. 結合テスト
  3. システムテスト
  4. 受入テスト

ユニットテストの対象はクラス(モジュール)など実装上の小さな単位。結合テストでモジュール間の「通し」を行う実装系のテスト。システムテストは、システムが要件を満たしていることを保証するために行い、機能要件テストと非機能要件テストを含む。受入テストは、顧客が行うユーザ受入テストと、検収のためにQAなどが行う受入テストの2パターンがある。


はじめて学ぶソフトウェアのテスト技法

はじめて学ぶソフトウェアのテスト技法

*1:本を読むーまとめるー説明するという流れが出来ないとやっぱり本当に理解したと言えないわなー