例えば、Button().click() を記録する場合、Button() メソッドは、マップされたプロパティーに基づいてオブジェクトを検出し、TestObject を AUT 内のオブジェクトにバインドします。このバインディングは、画面上のボタンの現在位置を直接求めるなど、実際のオブジェクトから情報を照会するために必要です。 次に、click() メソッドが実行され、TestObject が登録抹消されます。これにより、AUT 内の実際のオブジェクトへの接続が解放されます。 この方法でマップから TestObject を使用すると、オブジェクトの存続期間が自動的に管理されます。
TestObject は、マップ先となるプロキシーに基づいてスクリプト・サイドに公開されます。 コントロールをスクリプトに公開するときに、それがマッピングで指定された TestObject として公開されるように、プロキシーと TestObject のマッピングを指定する必要があります。 任意のプロキシーで getTestObjectClassName() メソッドをオーバーライドすることにより、プロキシーと TestObject との間にマッピングを作成することができます。プロキシーにマップされた TestObject を変更する場合には、getTestObejctClassName() API をオーバーライドして、カスタマイズ・ファイルで指定された正規名を戻します。