ALTA-E-3.2.1 (K4) プロジェクトに適切なTAAを設計する
適切なTAAを定義するために必要な要件を把握する
テスト自動化のアプローチでは、以下の要素を考慮する必要があります。
自動化する範囲:テストプロセス全体、特定のフェーズ、レベルを特定します。
サポートするテストレベル: コンポーネント、統合、システムレベルなど、どのレベルのテストを対象とするか決定します。
サポートするテストタイプ: 機能テスト、適合性テスト、相互運用性テストなど、どのような種類のテストをサポートするか定義します。
サポートする役割: テスト実行者、アナリスト、アーキテクト、マネージャーなど、どの役割のユーザーを対象とするか明確にします。
サポートするソフトウェア: 対象とするソフトウェア製品、ライン、ファミリーを特定し、TASの寿命を定義します。
サポートする技術: SUTで使用される技術との互換性を考慮し、TASでサポートする技術を決定します。
異なる設計やアーキテクチャを用いたアプローチと比較、対比を行う
TAAの設計では、様々なアプローチのメリットとデメリットを比較検討する必要があります。
テスト生成レイヤー: 手動か自動か、要件ベース、データベースベース、シナリオベースなど、どの手法を選択するか検討します。
テスト定義レイヤー: データ駆動、キーワード駆動、パターンベースなど、どのテスト定義を利用するか決定します。
テスト実行レイヤー: テスト実行ツール、テスト手順の実現方法、ヘルパーライブラリなどを選択します。
テスト適合レイヤー: SUTとのテストインターフェース、操作・観測ツール、監視ツールなどを選択します。
抽象化によるメリットが得られる領域を特定する
抽象化により、テストスイートの移植性、保守性、拡張性、使いやすさが向上します。
抽象化のレベル: テスト適合レイヤー、テスト実行レイヤーなど、どのレベルで抽象化を行うか決定します。
抽象化のメリットとデメリット: 抽象化によるメリットと、初期投資の増加、パフォーマンス低下などのデメリットを比較検討します。
ROIの分析: さまざまなTAAのアーキテクチャやアプローチについて、時間、コスト、工数、利益に関する技術的評価を行い、ROIを分析します。
SUTに使われる技術やTASとの関係について理解する
テスト実行の中核は、SUTへのアクセスです。
アクセスレベル: ソフトウェアレベル、APIレベル、プロトコルレベル、サービスレベルなど、どのレベルでアクセスするか決定します。
相互作用パラダイム: イベント駆動、クライアント/サーバー、ピアツーピアなど、TASとSUT間の相互作用のパラダイムを選択します。
SUT環境を理解する
SUTは、スタンドアロンソフトウェア、システムオブシステムズ、ハードウェアなど、様々な形態をとります。
テスト環境: SUTとTASの両方の機能を備えたコンピューター、ネットワーク接続されたコンピューター、テストデバイス、シミュレーターなど、適切なテスト環境を選択します。
指定されたテストウェアアーキテクチャ実装の時間と複雑度
見積り方法: ファンクションポイント法、3点見積り、COCOMOなど、適切な見積り方法を選択します。
指定されたテストウェアアーキテクチャ実装の使いやすさ
テスト担当者指向の設計: テスト担当者の視点に立った設計を行います。
使いやすさ: TASの操作性、ナビゲーション、検索機能などを向上させます。
文書化: マニュアル、ヘルプテキストなどを整備し、TASの理解を容易にします。
練習問題
Question #9 (3 point)
【出典元】
ISTQBテスト技術者資格制度
Advanced Level シラバス
テスト自動化エンジニア
Version2016.J01
この記事が気に入ったらサポートをしてみませんか?