0

みんな、タイムアウトの使い方を理解するのを手伝ってくれます。ドキュメントには、それらについてかなりの数の単語が記載されています。

popTimeout- Retrieves the previous timeout value from a stack, restores it as the current timeout value, and returns it.

pushTimeout - Stores the current timeout value on a stack and sets a new timeout value.

また、いくつかのコードも提供します。

target = UIATarget.localTarget();

target.pushTimeout(2);
    // attempt element access
target.popTimeout();

しかし、私はそれらをいつどのように使用するかを正確に理解していません。誰でも例を挙げることができますか?

4

1 に答える 1

1

自動化のテスト中に、一部の要素がすぐに表示されない場合があります。そのため、計測器はタイムアウト (デフォルトは 5 秒) を使用して、要求された要素を待機します。彼らはこれを猶予期間と呼んでいます。

デフォルトの猶予期間が必要でない場合があるため、タイムアウトを短い値または長い値に変更できます。pushTimeout と popTimeout を使用すると、以前の猶予期間を覚えておく必要なく、popTimeout を呼び出した後に以前の猶予期間が確実に復元されます。

例: 私のテストの 1 つで、ポップオーバーがアクティブになるのを待ちたくありませんが、アクティブなポップオーバーがあるかどうかを知りたいだけで、ある場合はそれを閉じます。

target.pushTimeout(0.0);

if ( target.isDeviceiPad() && ! isNull( popOver= app.mainWindow().popover() ) )
{
    UIALogger.logDebug(" dismiss popup by tapping somewhere");
    popOver.dismiss();
    target.delay(0.2);
}
target.popTimeout();

ところで、isNull() は私が作成したカスタム関数ですが、おそらく何が起こっているのか理解できます。

于 2013-03-23T12:31:30.313 に答える