JSTQB 6章 テスト支援ツール
■テストツール
・テストツールは「テストのマネジメント」「テスト設計」「テスト実行」などテスト全般を支援するツールを指す
・テストツールには6つの大分類がある
- テストマネジメントの支援用ツール
- 静的テスト支援ツール
- テスト仕様の支援ツール
- テスト実行と結果記録の支援ツール
- 性能・モニタリング支援ツール
- 特定のテストに対する支援ツール
■テストマネジメントの支援用ツール
・テストマネジメントツール:テストプロセスのテスト計画、テストモニタリング、テストレポート、テストコントロールを支援する
・要件マネジメントツール:要求仕様を登録し、開発の優先順位、個々の要求の状況記録、要求仕様や要求一覧のレポート出力の機能を有する
・インシデントマネジメントツール:インシデントを登録し、対応する優先順位、個々のインシデントの状況記録、インシデントの内容やインシデント一覧のレポート出力の機能を有する。インシデントではなくバグや欠陥を対象としたバグトラッキングツールや欠陥追跡ツールもある
・構成管理ツール:製品に紐づく要求仕様書や設計書などのドキュメント、ソースコード、システムを構成するコンポーネント、データなどの構成要素を構成管理ツールのリポジトリに保管し、バージョン管理やトレーサビリティの維持をする
■静的テスト支援ツール
・レビューツール:レビュープロセスで行われるレビューの計画や進捗の記録、レビューでのコメントの記録や共有、レビューのチェックリストやガイドラインを提供する。レビューは静的テスト技法であるので、テストマネジメントの支援用ツールではなく静的テスト支援ツールに分類されている
・静的解析ツール:コーディング規約を遵守しているかチェックするツール、コンポーネントやWebサイトのリンク構造や依存関係を分析・チェックしビジュアルに表示をするツールなどが該当する
・モデリングツール:UMLモデリングツール、データモデリングツールなど設計でモデルの整合性をチェック・維持できる機能を有する
■テスト仕様の支援ツール
・テスト設計ツール:テストケースやテスト手順の設計を支援するツールを指し、テストアイテムの仕様からテストケース、入力データ、予想結果などテストケース仕様を生成できる機能を有する
・テストデータ準備ツール:データベース、ファイル、転送データなどテストで使用するテストデータを生成する
■テスト実行と結果記録の支援ツール
・テスト実行ツール:テストケースやテスト手順を登録し、テストを自動あるいは半自動で実行する。ユーザインターフェースのテストで操作手順を記録し、その操作を再現するようなツールをキャプチャプレイバックツールと呼ぶ
・ユニットテストフレームワークツール:テストハーネスを含むコンポーネントテストのためのフレームワークを提供する
・テスト比較ツール:ユーザインターフェースの振る舞いや、データベースのテーブル、ファイルなどのテスト結果を予想結果や以前のテスト結果と比較する
・カバレッジ測定ツール:プログラムを実行するとソースコードのどこの部分が実行され、どこの部分が実行されていないかを示してくれたり、カバレッジを表示する機能を有する
・セキュリティツール:Webサイトの開発であれば、想定されるサイバー攻撃を実際に行ったり、静的に解析し、脆弱性を測定する機能を有する
■性能・モニタリング支援ツール
・動的解析ツール:実際にプログラムを実行したときに発生するメモリリークや配列を超えた参照などを発見する機能を有する
・性能テストツール、ロードテストツール、ストレステストツール:非機能要求として要求されている使用条件を再現して、実行しているソフトウェアの動作をモニタリングし、レポートする機能を有する
・モニタリングツール:OSのログ、ヒープメモリなどシステムリソースの使用状況の推移、ディスクの空き容量の推移、ネットワークのトラフィックの推移など、OSが用意しているコマンドや、本番運用で使われる運用監視ソフト、ネットワークアナライザーなどが含まれる
■特定のテストに対する支援ツール
・データ品質評価:データが仕様通りで完全にそろっており、目的のデータにコンバージョンやマイグレーションが可能かを評価する
■プローブ効果
・テストツールによって、実行のタイミングや結果が実際と異なること
- 追記
■テスト自動ツールの説明
Script言語を使用してテストを自動実行する
■パイロットプロジェクトの目的
ツールの詳細仕様を学習する