Selenium Webdriver(C#)を使用すると、次のエラーが時々発生します。
System.InvalidOperationException:不明なエラー:タイムアウトからオートメーション拡張を取得できません:レンダラーからのメッセージの受信がタイムアウトしました:-3.959(セッション情報:chrome = 37.0.2062.120)(ドライバー情報:chromedriver = 2.10.267521、platform = Windows NT 6.2 x86_64)
この間違いが現れる方法:
OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute、Dictionaryのc:\ Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 1048のOpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse) `2パラメータ)in c:\ Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 865 at AutomatedTests.DriverCover..ctor(IWebDriver driver)
そのため、次のコードで発生します。
public class DriverCover
{
public DriverCover(IWebDriver driver)
{
_driver = driver;
_driver.Manage().Window.Maximize(); //There is my mistake
}
private readonly IWebDriver _driver;
}
このクラスをPageObjectクラスの基本クラスとして使用し、PageFactoryを使用してWebページの要素を初期化しています。
私はchromedriver v.2.10とGoogle Chrome v。37.0.2062.120 mを持っています。
さらに、同じ行で別のエラーが発生しました:
OpenQA.Selenium.WebDriverException:URL
http://localhost:62407/session/021e05cd4c89abedb2abc77342b3bd7c/window/current/maximize
のリモートWebDriverサーバーへのHTTPリクエストが60秒後にタイムアウトしました。 ----> System.Net.WebException:操作がc:\ Projects\webdriver\dotnet\src\webdriver\Remote\HttpCommandExecutor.cs:lineのOpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request)でタイムアウトしました152:OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute)at c:\ Projects\webdriver\dotnet\src\webdriver\Remote\DriverServiceCommandExecutor.cs:line 73 at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute 、Dictionary`2パラメータ)in c:\ Projects\webdriver\dotnet\src\webdriver\Remote\RemoteWebDriver.cs:line 852 at AutomatedTests.DriverCover..ctor(IWebDriver driver)
Chrome=でも同様の問題が発生しており、問題は、テストを実行する前にブラウザーを最大化する方法にありました。
これから切り替えました:
Driver.Manage().Window.Maximize();
これには(Chromeのみ):
if (typeof(TWebDriver) == typeof(ChromeDriver))
{
var options = new ChromeOptions();
options.AddArgument("start-maximized");
driver = new ChromeDriver(driverPath, options);
}
Chrome Driver Mismatch.Iドライバを最新バージョンにアップグレードすることでこの問題を修正しました。ie2.29( https://chromedriver.storage.googleapis.com/ index.html?path = 2.29 / )
あなたはこれを試すことができ、私のために働きましたMy chromeブラウザのバージョンは57であり、Chromeドライバーのバージョンは2.27です:次のコード行を追加することで私は私の問題を解決しました。
ChromeOptions options = new ChromeOptions();
options.addArguments("enable-automation");
options.addArguments("--disable-infobars");
WebDriver driver = new ChromeDriver(options);
同様の問題、同じエラーがありましたが、getScreenshotAs()を呼び出したとき...古いChromeDriverがあり、更新すると問題が修正されました