オブジェクトの状態の訂正

スクリプトの中でオブジェクトが操作されるときに収集されるオブジェクト状態情報は、常に必要というわけではありません。 オブジェクトの状態がスクリプト中の状態情報と一致しない場合、コードが正常に作動しないことがあります。 実行するテストにおいて、オブジェクトの正確な状態が必要でない場合は、この状態情報を除去したほうが良いこともあります。
ホスト接続スクリプトを作成するときに、logoff を入力した後で Enter キーを押す、といったキー・ストロークを入力するスクリプトは次のとおりです。
 TFrame().inputKeys(logoff{ENTER});

Extension for Terminal-based Applications は再生時に、TFrame が作動可能状態になるまで待機してから、キー・ストロークを送信します。

スクリプトの記録時に、表示スペースがロードされているかどうかを端末の同期アルゴリズムが決定する前に、キー・ストロークを入力するスクリプトは次のとおりです。
TFrame(ANY, UNINITIALIZED).inputKeys(logoff{ENTER});
これは、コマンドの入力を開始したときに、TFrame オブジェクトが初期化されておらず、作動可能状態になっていなかったことを示しています。 再生時には、スクリプトがこの行に到達すると、端末の状態に関係なくただちにこれらのキー・ストロークが送信されます。
端末の状態を訂正するには、スクリプトの中のオブジェクトから次のようにして状態情報を除去します。
        //Remove "(ANY,UNINITIALIZED)" is any
        //TFrame(ANY,UNINITIALIZED).inputKeys(logoff{ENTER});
        TFrame().inputKeys(logoff{ENTER});

フィードバック