web-dev-qa-db-ja.com

Selenium IDE-5秒間待機するコマンド

FirefoxでSelenium IDEを使用し、待機コマンドを検索しています。私の問題は、外部マップが埋め込まれたWebサイトをテストすることです。この外部マップの読み込みには3〜5秒かかります。

私のコマンド:

open /Page/mysite.html
//Wait Command? (5 seconds)
ClickAndWait link=do something
81
LaPhi

pause コマンドを使用します。速度を最速に設定します([アクション]-> [最速])。そうしないと動作しません。

95
Adam Prax

これにより、5秒間遅延します:

コマンド:一時停止
ターゲット:5000
値:

これにより、3秒間遅延します:

コマンド:一時停止
ターゲット:3000
値:

ドキュメント:

http://release.seleniumhq.org/Selenium-core/1.0/reference.html#pause

enter image description hereenter image description here

81
MacGyver

antを使用している場合は、これを使用して5秒間の一時停止を示します。

<tr>
    <td>pause</td>
    <td>5000</td>
    <td></td>
</tr>

つまり、target: 5000およびvalueは空です。参照が示すように:

pause(waitTime)

引数:

  • waitTime-スリープする時間(ミリ秒)

指定された時間(ミリ秒単位)待つ

6
fedorqui

あなたの最善の策はおそらくwaitForConditionであり、マップがロードされたときにtrueを返すjavascript関数を書くことです。

4

これは、C#(WebDriver/Selenium 2.0)で探していることを行います。

var browser = new FirefoxDriver();
var overallTimeout = Timespan.FromSeconds(10);
var sleepCycle = TimeSpan.FromMiliseconds(50);
var wait = new WebDriverWait(new SystemClock(), browser, overallTimeout, sleepCycle);
var hasTimedOut = wait.Until(_ => /* here goes code that looks for the map */);

never Thread.Sleepを使用すると、テストの信頼性が低くなります。

2
Pawel Pabich

Pauseコマンドは、HTML形式のIDEで直接使用できます。

JavaまたはCを使用している場合、Thread.sleep(5000)を使用できます。時間はミリ秒単位です。他の言語は「sleep 5」またはtime.sleep(5)をサポートしています。設定した時間だけ待つための複数のオプションがあります。

0
rattlerbred

リンクが表示されるまで待機し、クリックできます。

Command: waitForElementPresent Target: link=do something Value:

0

コマンドclickAndWaitの前に次のコードを追加して、特定のリンクが表示されるまでスクリプトが待機するようにします。

   <tr>
        <td>waitForVisible</td>
        <td>link=do something</td>
        <td></td>
    </tr>

一時停止の代わりに待機コマンドを使用する方法は、ほとんどの場合、より効率的で安定しています。

0
george

私がテストしたサイトで動作することがわかったのは、これです。

waitForCondition | Selenium.browserbot.getUserWindow()。$。active == 0 | 20000

クレンダース

0
Klendathu

Chromeでは、「Selenium IDE」の場合、一時停止しないという問題もありました。以下のように指定すると、一時停止します。

  • コマンド:一時停止
  • ターゲット:空白
  • 値:10000

これは10秒間停止します。

0
TechSingh