はじめに
今回のテーマである「なぜプロジェクトにテスト計画が必要なのか」という質問に答える前に、まずテスト計画とは何であるかについて考えてみましょう。
テスト計画とは
テスト計画とは、プロジェクトにおけるシステム要求仕様を対象としたテスト概要ドキュメントです。テスト範囲、テスト戦略、テストプロセス、リソースなどの必要な情報が含まれています。会社の構成やプロジェクトによって、テスト計画も異なっていますが、テスト計画の最終目的は一緒で、システムまたは製品が仕様および他の要件を満たしているかどうかを確認することです。
それでは、次にテスト計画がプロジェクトでどのように役立つのかについてみていきましょう。
テスト計画はシステムが正しく実行され、使用できる状態になることを確認するために作成されます。さらに、テスト計画を作成することにより、規定された要件および仕様に対するシステムの適合性に対する客観的な評価も行うことができます。
テスト計画に必要な項目とは
では上記の要件を満たすためにテスト計画にはどのような内容やコンテンツを含めるのがよいのでしょうか。
プロジェクトの品質、さらにテストの進捗を確保するために、テスト計画には、次のようなコンテンツを含めることが重要です。
・テスト範囲:テスト計画に適用される単体テスト、結合テスト、システムテストなどの各テスト段階を記述します。各テスト段階に応じてどのテスト種類(機能テスト、パフォーマンスなど)が適用されているかどうかを明確します。
・コンストレイント:テストに関するコンストレイントは、判断可能な範囲で全てリストアップします。例えば:テスト環境の誤差、リソース、スケジュール、ツールなどの不足があれば、記述します。
・リスクリスト:プロジェクトの品質に影響を与える可能性があるリスクをリスト化します。リスクには予防できるリスクと災害やパンデミックなどの不測の事態によって引き起こされるリスクがありますが、前者に対してはしっかりと対応策を洗い出しておくことが有効です。後者についても万一に備えて事前に何ができるかを検討しておくとよいでしょう。
一版的なリスクとしては、テスト環境、テストツール、人材などが挙げられます。
・トレーニング:テスト実装および実行するためにチームメンバーへの必要なトレーニングをリスト化します。例:テストプロセス、新テスト方法、テストツールなどのトレーニングです。
・テスト項目:テストの目的を明確にして、このテスト目的をベーズにテスト対象とテストケースを見積もります。
・受入テストの基準:テストフェーズごとに品質条件に満たすテスト基準を定義します。「この基準に達成したら次のテストフェーズに移動可能」または「納品可能」などの項目を決めます。
・テスト戦略:テスト戦略は、テスト対象に対して推奨されるアプローチを提示します。これにはテストタイプとテストステージが含まれ、テストタイプはテストを実行するために選択されるテストタイプ(機能、パフォーマンステストなど)を決定します。
テストタイプとともに、テストステージはテストが実行されるステージを明確に示します。
・人事リソース:プロジェクトのスタッフ情報(役割と特定の責任)が含まれています。
・テスト管理:テスト管理について定義します。テストのトラッキング、コミュニケーションと欠陥管理(欠陥管理ツールと欠陥プロセス)などが記述されています。
・テスト環境:ハードウェアとソフトウェアに関する依頼をリスト化します。テストが必要な機器、機器数と使用期間についても記載します。
・テストマイルストーン:プロジェクトスのテータス成果を伝えるために、各テストマイルストーンを定義します。
・成果物:テストの納品物を定義します。
おわりに
このようなコンテンツをそれぞれ明確に定めたテスト計画を用意することができれば、製品の品質とプロジェクトの進捗の両方を担保することが可能になります。本記事を通じ、テスト計画がいかに大切であるかを少しでもご理解いただけたのであれば幸いです。
私たちSHIFT ASIAでは今回ご紹介したテスト計画を含め、さまざまなソフトウェアテスト・品質保証、開発などのソリューションを提供していますので、ご興味があれば以下のソリューション概要をご覧ください。