テスト計画・テストの分担と体制(その1)設計と実施と記録と再現

2021年4月23日テスト品質

ソフトのテスト計画にはテスト作業の分担を具体的に書く

ソフトのテスト計画書ではテストとデバッグの作業についての作業の分担を明記しておく事が大切です。特に、テストとデバッグの繋ぎ目にあたる不具合の再現をどのチームが分担するのかを明確にしておきましょう。

ソフトのテストとデバッグは、設計・実装チームとテストチームとが連携して作業を進めます。基本的にはテストチームがテストで不具合を見付け、その不具合がソフトのバグならば設計・実装チームデバッグを担当する事になりますが、一部の作業についてはどちらのチームでも実施できる事もあります。

テストを進めると複数の不具合が見つかるので、テストチームと設計・実装チームは同時に複数の不具合に対応しなくてはいけません。ですので、テスト作業の分担や連携の仕方をしっかりと決めておき、テスト計画書に書いて置かないと混乱が起きてしまします。

テストとデバッグの作業を具体的にブレークダウンすると、以下の様になるので、これらの各々の作業をどのチームが行うのかとか、テストチームと設計・実装チームとの間で、どうやって情報を共有して作業の連携をするのかは、使うシステムも含めてテスト設計の段階で決めて、テスト計画書に書いておくのが良いですね。

  1. テスト設計(テスト項目やテスト環境やテストの手順を具体化する)
  2. テストの実施(テスト設計の内容に従って実際にテストを実施する)
  3. 不具合の記録(テストで発見した不具合の内容や発生条件を記録する)
  4. 不具合の再現(テストで発見した不具合の再現状況を確認する)
  5. 不具合の切り分け(不具合がソフトのバグかどうかを判定する)
  6. バグの修正(バグの原因を調査してソースコードを修正する)
  7. 修正効果の確認(修正されたソフトでバグが修正された事を確認する)
  8. 修正内容の登録(修正版のソースコードをマスターツリーに反映する)
  9. 修正完了の確認(マスターツリーからバグが除去された事を確認する)

それでは、ひとつひとつの作業について、もう少し具体的に見ていきましょう。

(1)テスト設計はテストチームの担当

テスト設計では、①実施するテストの種類を決めて②各々のテスト項目を決め、③それらのテスト項目毎にテストに必要は環境や機材を選んで、④具体的なテストの手順を書き出して、⑤テスト結果の判定方法を決める という作業を進めます。

このテスト設計はテストチームの中でもテスト経験の豊富なテスト設計の担当者が行います。テストの規模が大きい時には、複数のテスト設計担当者がテストの種類毎に分担してテスト設計を進める事もあり、またテスト設計の結果を相互に設計レビューをする事もあるので、誰がどのテスト設計を行うのかの分担まで、テスト計画書に書いておくのが良いです。

(2)テストの実施もテストチームの担当

作成されたテスト手順書に従って、テストの環境や機材を集めて実際のテスト作業を進めるのは、テストチームのテスト担当者の作業です。ソフトのテストの場合には、テスト環境やテスト機材の設定の仕方や使い方も知っていないとテスト作業ができません。

効率的にテストを進めるには、テスト環境やテスト機材を使った事があるかどうかも含めて、テスト担当者の分担を決めるておく必要があります。もし、テスト担当者がっ環境や機材を始めて使うのなら、それらの操作に慣れるための時間もテスト計画に含んでおくが良いでしょう。

(3)不具合の記録は記録する項目を明確にしておく

テストで見つけた不具合はテストチームのテスト担当者が記録するのですが、①不具合についての情報はどこに記録するのか、②不具合の記録とはどんな内容を書くのか、③各々の項目はどの程度詳しく書くのか、等はテストの前に決めてテスト計画書に具体的に書いておきましょう。一般的には以下のような項目が計画書に書いてあると良いと思います。

  1. 不具合の記録先( EXCEL の表なのか、バグトラキングシステムなのか)
  2. 不具合の検出日と発見者(何時、誰が見つけたのか)
  3. 不具合を検出したテスト項目(どのテストで不具合が見つかったのか)
  4. 不具合の内容(テスト結果のどの部分が正しくない結果だったのか)
  5. 不具合の確証(正しく無い事を示す具体的は画面表示やログ等)
  6. 不具合の発生条件(不具合を検出した時の環境や装置の設定等)

(4)不具合の再現はだれが担当するのかを決めて置く

テストで不具合が見つかると不具合の調査が始まりますが、調査で大切な事はその不具合を再現できるかどうかです。この不具合の再現はどのチームが担当どんなタイミングで実施するのかは、開発組織やテスト・デバッグの役割分担によって色々です。 

不具合の再現はテスト担当者自身が分担する事が多ですがそうでない場合もあります、その時のソフト開発プロジェクトの状況によっては、例えば以下のどれかになる事もあります。分担がどうなるにしても、テスト計画の最初の時点で再現作業の分担を明確に決めておきテスト計画書に書いておくのが良いです。

  1. 不具合を発見したテスト担当者(再現の効率重視ならこれですね)
  2. テストチーム内の再現担当者(再現の条件など記録の精度を重視する時です)
  3. 設計・実装チームの担当者(テストチームの負荷を下げたい時の選択です)

再現ができたらバグかどうかの切り分けです

テストで見つけた不具合はソフトのバグが原因ならばデバッグ作業が必要ですが、そのためにはバグかそうでないかの切り分けが必要です。不具合の切り分けとその後の作業については、その2の記事で紹介します。

(次の記事)テスト計画・テストの分担と体制(その2)不具合の一次切り分けとデバッグ に続く
(前の記事)テスト計画・テスト目標(その2)プロセス品質と作業品質とテスト管理 に戻る
 テストの記事の先頭 に戻る