私はSelenium2.20WebDriverを使用して、C#でFirefoxブラウザーを作成および管理しています。ページにアクセスするには、次のコードを使用して、URLにアクセスする前にドライバーのタイムアウトを設定します。
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(5)); // Set implicit wait timeouts to 5 secs
driver.Manage().Timeouts().SetScriptTimeout(new TimeSpan(0, 0, 0, 5)); // Set script timeouts to 5 secs
driver.Navigate().GoToUrl(myUrl); // Goto page url
問題は、ページの読み込みに時間がかかることがあり、Selenium WebDriverを使用してページを読み込むためのデフォルトのタイムアウトは30秒であり、長すぎるように見えることです。そして、私が設定しているタイムアウトが、GoToUrl()メソッドを使用したページのロードに適用されるとは思いません。
そのため、ページを読み込むためのタイムアウトを設定する方法を見つけようとしていますが、実際に機能するプロパティやメソッドが見つかりません。デフォルトの30秒のタイムアウトは、要素をクリックしたときにも適用されるようです。
ページの読み込みタイムアウトを特定の値に設定して、GoToUrl()メソッドを呼び出したときに、続行する前に指定した時間だけ待機するようにする方法はありますか?