1. ホーム
  2. selenium

[解決済み] Selenium はドキュメントの準備ができるまで待つ

2022-05-13 13:25:55

質問

ページが完全にロードされるまでseleniumを待つようにするにはどうしたらよいか、誰か教えてください。私は何か一般的なものが欲しい、私はWebDriverWaitを構成し、それを待つために 'find'のようなものを呼び出すことができることを知っているが、私はそこまでしない。私は、ページが正常にロードされ、テストするために次のページに移動することをテストする必要があるだけです。

私は.netで何かを見つけましたが、javaでそれを動作させることができませんでした....

IWait<IWebDriver> wait = new OpenQA.Selenium.Support.UI.WebDriverWait(driver, TimeSpan.FromSeconds(30.00));
wait.Until(driver1 => ((IJavaScriptExecutor)driver).ExecuteScript("return document.readyState").Equals("complete"));

どなたかご意見をお聞かせください。

どのように解決するのですか?

このコードを試してみてください。

  driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);

上記のコードでは、ページの読み込みを最大10秒まで待ちます。もしページの読み込みがこの時間を超えた場合、このコードは TimeoutException . あなたはこの例外をキャッチして、必要な処理を行います。私はこのコードをまだ試していません。ちょうどそれを試してみたい。

これは暗黙の待機です。一度設定すると、Web Driver のインスタンスが破棄されるまでスコープを持ちます。

を参照してください。 のドキュメントを参照してください。 WebDriver.Timeouts をご覧ください。