このプロキシー・サンプルでは、processSingleMouseEvent() プロキシー API を拡張して、スピン・コントロールの記録動作を変更します。 スピン・コントロールにはその子として 2 つのボタンと 1 つのテキスト制御がありますが、テストの観点から、それを TestObject Map に表示されている、子を持たない単一のコントロールとして処理する必要があります。 (TestObjectMap では、ボタンおよびテキストは SubItems として処理されます。) processSingleMouseEvent() インプリメンテーションは、適切な SubItems (例えば、記録用のパラメーターとして atButton("UP") または atButton("DOWN")) とともにメソッドを設定します。 また、スピン・コントロールには子オブジェクトがありますが、それらは別個の TestObjects としてリストされていないことを確認する必要があることに注意してください。 そのため、getChildAtPoint() および getChildren() API は NULL 値を戻すように拡張されます。 これらの子オブジェクトは SubItems として処理されます。
再生サポート
記録中に導入される SubItem ごとの再生をサポートするために、Functional Tester はプロキシーを介して各 SubItem の画面の長方形を探します。 SubItem の長方形は、java.awt.Rectangle getScreenRectangle(Subitem subitem) プロキシー API を拡張して提供できます。
JSpinnerProxy.jar および JSpinnerProxy.rftcust ファイルをカスタマイズ・ディレクトリーにコピーし、Functional Tester を再始動して、サンプル・テスト対象アプリケーション (AUT) をテストします。
以下のようにして、スピン・コントロールの記録動作を確認できます。