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

スクリプトの中でオブジェクトが操作されるときに収集されるオブジェクト状態情報は、常に必要というわけではありません。 オブジェクトの状態がスクリプト中の状態情報と一致しない場合、コードが正常に作動しないことがあります。 オブジェクトの正確な状態は、実行中のテストには必ずしも必要でなく、この状態情報を除去したほうが良いこともあります。
ホスト接続スクリプトの作成時に入力のキー・ストローク (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});

フィードバック