Agile-testing-techniques
アジャイルテスト-テクニック
従来のテストのテスト手法は、アジャイルテストでも使用できます。 これらに加えて、アジャイルプロジェクトではアジャイル固有のテスト手法と用語が使用されます。
テストベース
アジャイルプロジェクトでは、製品バックログが要件仕様文書に置き換わります。 製品バックログの内容は通常、ユーザーストーリーです。 非機能要件もユーザーストーリーで考慮されます。 したがって、アジャイルプロジェクトのテストの基礎はユーザーストーリーです。
品質テストを確実にするために、テストベースとして以下を追加的に考慮することもできます-
- 同じプロジェクトまたは過去のプロジェクトの以前の反復からの経験。
- システムの既存の機能、アーキテクチャ、設計、コード、および品質特性。
- 現在および過去のプロジェクトの欠陥データ。
- お客様の声。
- ユーザードキュメント。
完了の定義
定義の完了(DoD)は、Sprintバックログのアクティビティの完了を保証するためにアジャイルプロジェクトで使用される基準です。 DoDはスクラムチームごとに異なる場合がありますが、チーム内で一貫している必要があります。
DoDは、ユーザーストーリーの機能や機能をユーザーストーリーの一部である非機能要件と共に実装するために必要なアクティビティのチェックリストです。 DoDチェックリストのすべての項目が完了すると、ユーザーストーリーは完了ステージに到達します。 DoDはチーム全体で共有されます。
ユーザーストーリーの典型的なDoDには、次のものが含まれます-
- 詳細なテスト可能な受け入れ基準
- ユーザーストーリーとイテレーション内の他のユーザーストーリーの一貫性を確保するための基準
- 製品に関連する特定の基準
- 機能的行動の側面
- 非機能特性
- インターフェース
- テストデータ要件
- テスト範囲
- リファクタリング
- レビューと承認の要件
ユーザーストーリーのDoDに加えて、DoDも必要です-
- テストのすべてのレベルで
- 各機能について
- 各反復に対して
- リリース用
試験情報
テスターは、次のテスト情報を持っている必要があります-
- テストする必要があるユーザーストーリー
- 関連する受入基準
- システムインターフェース
- システムが機能すると予想される環境
- ツールの可用性
- テスト範囲
- DoD
アジャイルプロジェクトでは、テストはシーケンシャルアクティビティではなく、テスターは共同モードで作業することになっているため、テスターの責任は次のとおりです。
- 必要なテスト情報を継続的に取得します。
- テストに影響する情報のギャップを特定します。
- 他のチームメンバーと共同でギャップを解決します。
- テストレベルに到達するタイミングを決定します。
- 関連する時間に適切なテストを実行してください。
機能的および非機能的テスト設計
アジャイルプロジェクトでは、従来のテスト手法を使用できますが、焦点は初期テストにあります。 実装を開始する前に、テストケースを準備する必要があります。
機能テストの設計では、テスターと開発者は次のような従来のブラックボックステスト設計手法を使用できます。
- 等価パーティション
- 境界値分析
- 決定表
- 状態遷移
- クラスツリー
非機能テスト設計の場合、非機能要件も各ユーザーストーリーの一部であるため、ブラックボックステスト設計手法は、関連するテストケースの設計にのみ使用できます。
探索的試験
アジャイルプロジェクトでは、多くの場合、時間はテスト分析とテスト設計の制限要因です。 そのような場合、探索的テスト手法を従来のテスト手法と組み合わせることができます。
探索的テスト(ET)は、同時学習、テスト設計、テスト実行として定義されます。 探索的テストでは、テスターは実行されるテストの設計を積極的に制御し、テスト中に得られた情報を使用して、より優れた新しいテストを設計します。
探索的テストは、アジャイルプロジェクトの変更に対応するのに便利です。
リスクベースのテスト
リスクベースのテストは、障害のリスクに基づいたテストであり、テスト設計手法を使用してリスクを軽減します。
製品品質リスクは、製品品質の潜在的な問題として定義できます。 製品品質リスクには以下が含まれます−
- 機能的リスク
- 機能しないパフォーマンスリスク
- 機能しないユーザビリティリスク
リスク分析は、各リスクの確率(尤度)と影響を評価するために行われます。 次に、リスクが優先されます-
- 高リスクには広範なテストが必要
- 低リスクには大まかなテストのみが必要
テストは、各リスクのリスクレベルとリスク特性に基づいて、適切なテスト手法を使用して設計されます。 その後、リスクを軽減するためのテストが実行されます。
フィットテスト
適合テストは、自動化された受け入れテストです。 Tools FitおよびFitNesseは、受け入れテストの自動化に使用できます。
FITはJUnitを使用しますが、テスト機能を拡張します。 HTMLテーブルは、テストケースの表示に使用されます。 フィクスチャは、HTMLテーブルの背後にあるJavaクラスです。 フィクスチャはHTMLテーブルのコンテンツを取得し、テスト対象のプロジェクトでテストケースを実行します。