4

Selenium Web Driverで長時間待つことはできますか?

以下のように暗黙的にwaitコマンドを設定することはできますが、指定した時間は待機しません。

 driver.manage().timeouts().implicitlyWait(5, TimeUnit.MINUTES);

ここに何か問題がありますか?

私の場合、1つのテストケースを実行し、4分間待ってから、次のテストケースを実行する必要があります。

ここではJavaを使用しています。

4

2 に答える 2

9

特定の要素を待つ必要があることを考えると、以下のようにExplicitWaitの行で何かを実行します。

WebDriverWait wait = new WebDriverWait(driver, 300); // The int here is the maximum time in seconds the element can wait.
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("someId")));

この場合、必要な任意のExpectedConditionsを使用できます。また、非常に特殊なケースでは、大きな待機時間を使用する必要がありません。このimhoは良い習慣です。

于 2013-02-15T15:17:27.683 に答える
5

実はこれは私の答えではありません、2日前にここでこの答えを見ましたが、それを適用する時間がありませんでした。今日私はそれを試しました、そしてそれは私が望んでいたものです。

残念ながら、ここにその回答が表示されないので、この回答を追加しました。すべてのクレジットは、この回答をここに投稿したユーザーに割り当てられます。

この場合、私がやりたかったのは、定期的なcronジョブを実行するまでドライバーを5分間待機することです。

Thread.sleep(4000);プログラムの実行を一時停止します。

于 2013-02-18T06:15:49.150 に答える