テストケースとは
JSTQB用語集(※1:ソフトウェアテスト標準用語集Version2.3.J01)では、「実行事前条件、入力値、アクション(適用可能な場合)、期待結果、および実行事後条件のセットであり、テスト条件に基づいて開発されたもの」と定義されています。ソフトウェアテストを実施するためには、具体的な確認内容や期待値などをまとめた「テストケース」が必要になります。
テストケースには読み手がいます。テスト実行者、他のテスト設計者、レビュアー、開発者などです。これらの読み手にテスト内容が伝わるように書かなくてはなりません。さまざまな読み手が理解できるように記述しておかなければ、テストケースとして意味のないものになってしまいます。
良いテストケースを書くには、十分にテスト計画する
1. テスト方針(PJの背景、テストの目的、テスト対象、対象外のもの、前提と制約)
2. テスト基準(テストレベル、テストタイプ、そのマッピング、テスト手法、タスク)
3. 関係者(ステークホルダー、承認、役割と責任範囲、要員トレーニング)
4. スケジュール(工程、期間)
5. テスト環境(テストシステム構成、テストデータ、作業場所、適用ツール)
6. 管理基準(管理項目、開始終了基準、一時停止基準、成果物)
7. リスクと対策(プロダクト品質観点、プロジェクト遂行観点)
一言で表すと、テスト計画は、テストにおける5W1Hを詳細に洗い出していくプロセスといえるでしょう。
テスト計画作成の流れ
1.テストに求められる要求を整理
2.実際に行うテストの実行計画を作成
3.テスト段階で必要となる管理項目の整理と管理計画の作成
実行計画を作成する際に意識したいポイント
- 実際のテストはどのような段取りで行うか
- テストをする際に必要なツールなどはあるか
- テスト段階の各項目における基準は明確に
- テストにおける役割や実施場所を設定
- どのくらいのテスト期間が必要なのかスケジュールの明確化
テスト段階で必要となる管理項目
- リスクの管理
- 作成・記録するデータや文書の管理
- 進捗管理
- 機材・ツール・人材の管理
- 仕様変更等の管理
テスト計画の骨組は、以下5W1Hに置きかえることができる
– テスト方針の立案→Why
– テスト基準の決定→What
– 要員・体制の決定→Who
– スケジュールの決定→When
– テスト環境・ツールの決定→Where
– 各種管理基準の設定→How
これらをアウトプットしたドキュメントがテスト計画書となる
漏れなく、効率よくテストケースを洗い出す方法
- 同値分割
- 境界値分析
- ディシジョンテーブル(決定表)
- 状態遷移テスト
- ランダムテスト
テスト計画を効率よく進める
- チームメンバー同士での情報共有
- 観点の目線を変えてみる
まとめ
管理システムといえば、BacklogやRedmine、Jiraなど、BTSとしても活用できるツールをお使いの方は多いと思う。
最近では、テスト管理に特化したツールが登場し、BacklogやRedmine、JiraなどのBTSとの連携も可能なクラウド型のサービスもある。
テスト管理ツールは、テストケース全体を把握できるだけでなく、進捗管理や結果の入力、エビデンスの添付など、システムやソフトウエアのテストに役立つ機能がある。
https://backlog.com/ja/
https://www.redmine.org/
https://www.atlassian.com/ja/software/jira/agile