Rational Functional Tester プロキシー SDK
アプリケーションのユーザー・インターフェース・コントロールに対して、自動化された機能テスト・サポートを拡張します。
プロキシー SDK の概要
Rational® Functional Tester プロキシー Software Development Kit (SDK) を使用すると、デフォルトで
Functional Tester
が提供するサポートの範囲を超えて、自動化された機能テスト・サポートをアプリケーションのユーザー・インターフェース・コントロール (GUI テスト・オブジェクト) のサポートにまで拡張することができます。 プロキシー SDK は、新規コントロールのテストのサポートを追加するために
Functional Tester
を拡張する方法に関する詳細資料、API リファレンス、およびすぐに使用可能なサンプルとチュートリアルを提供します。 これは、既にサポートされているコントロールを既存のドメインから拡張するのにも役立ちます。 プロキシーは手動で、またはプロキシー・ウィザード駆動型のアプローチを使用して開発できます。
Functional Tester のアーキテクチャー
Rational Functional Tester
を拡張して、テスト対象アプリケーション (AUT) と通信するために必要な追加機能を実行することができます。 これを行うには、
Functional Tester
はまず AUT への通信チャネルを確立する、つまり使用可能にします。
プロキシー開発
機能テストにおいて挑戦となるのは、テストがサポートしなければならない、使用可能なユーザー・インターフェース (UI) フレームワーク (例、Java および HTML など) およびコントロール (例、ボタンおよびテーブルなど) の種類が多いことです。UI フレームワークは、アーキテクチャーの点で異なり、プログラミング・モデルおよびコントロールはその継承階層、メソッド、プロパティー・データ、およびユーザー・アクションの点で異なります。
TestObject
TestObject は、プロキシーおよびテスト対象アプリケーション (AUT) コントロール用のスクリプト・サイドのインターフェースです。TestObject は、テスト・スクリプトと ProxyObject との間の接続ポイントであり、AUT 内の実際のオブジェクトに接続します。記録時に、ステートメントが記録され、オブジェクトがオブジェクト・マップに追加されます。 スクリプトは、オブジェクト・マップからの情報を使用して、TestObject を構成および検出します。
ProxyObject 階層
任意のドメインの既存のプロキシーを展開することによって新規のプロキシーを作成する場合、正しいプロキシーを展開できるように既存のプロキシーや階層について理解しておくことは重要です。
TestObject クラス図と正規名
Functional Tester
には、階層的にグループ化された TestObject の事前定義セットがあり、それぞれの TestObject には一揃いの事前定義メソッドがあります。
SubItem
SubItem は TestObject の一部です。SubItem はマップされないため、ObjectMap には含まれていません。
値クラスと値マネージャー
以下のコード例は、いくつかの値クラスと値マネージャーを示しています。
TestData 型
Functional Tester
フレームワークは、コントロールから検査および参照用のデータを抽出するために
getTestDataTypes()
および
getTestData(String)
プロキシー・メソッドを呼び出します。 これらのメソッドは、データ検査ポイントの作成および再生の際に使用されます。
getTestDataTypes()
メソッドをオーバーライドして、コントロール用の特定のデータ型をさらに追加することができます。
プロキシー例外
Functional Tester
には、機能テスト時に通常予期される広範囲のエラーに対応する事前定義例外のセットが含まれています。 これらの例外は、Java と .NET の両方のプロキシー開発フレームワークで使用できます。
プロキシー開発のベスト・プラクティス
プロキシーを開発する際にベスト・プラクティスに従うことによって、作業をより効率的かつ効果的に行うことができます。 開発における取り組みを強化するには、以下の方式を考慮してください。
フィードバック