Я застрял в проблеме, из-за которой я относительно не вижу, что является причиной ошибки.
После проведения исследования я вижу, что это общая проблема, но ни одно из решений не подходит и не работает для меня.
Ошибка Selenium - Тайм-аут HTTP-запроса к удаленному WebDriver через 60 секунд - это не применяется, потому что a.нет метода AddArgument для опций IE, чтобы добавить no-sandbox и B. Мой IE изначально открывает предоставленный мною веб-сайт по умолчанию, но после открытия не переходит с explorer.Driver = new InternetExplorerDriver(explorer.Options);
https://sqa.stackexchange.com/questions/13326/the-http-request-to-the-remote-webdriver-server-timed-out-after-60-seconds - моя страница загружена, но время ожидания истекло, поэтому это не помогает.
HTTP-запрос к удаленному серверу WebDriver для URL-адреса - Chrome - снова параметр no sandbox не помогаетТем не менее, он отмечает, что возможной причиной является несоответствие браузера / веб-драйвера, но у меня последняя версия IE и последняя версия Selenium.Webdriver.IExplorer
На сайте seleniumhq мне удалось найти приведенное ниже, однако я прочитал, что это было принятов недавнем обновлении селен
Еще раз, языковые привязки (ваш код C #) используют HTTP для связи с драйвером браузера (chromedriver.exe, geckodriver.exe, IEDriverServer.exe и т. д..).Он инициирует сеанс с драйвером, отправив сообщение POST в http://localhost:(some значение порта) / сеанс.Проводной протокол WebDriver - это JSON-over-HTTP, поэтому каждая команда выдает HTTP-вызов localhost.Что касается того, почему сессии не создаются, я не знаю.Маловероятно, что проект Selenium сможет сузить суть проблемы.Я уверен, что это полностью зависит от среды, будучи запущенным под IIS.Кроме того, у меня нет возможности или окружающей среды, чтобы сузить его дальше.
Может кто-нибудь помочь, пожалуйста?Это расстраивает, потому что каждые 15-20 перестраиваний мне кажется, что я полностью инициализирую его там, где мой код переходит в следующий метод и входит в систему.
вот мой код
private void btnInitalize_Click(object sender, EventArgs e)
{
Cursor = Cursors.AppStarting;
explorer = Initalizer.InitalizeRerouter();
explorer.Driver.FindElementByName("userID").Click();
explorer.Driver.FindElementByName("userID").SendKeys("classified");
explorer.Driver.FindElementByName("userPassword").Click();
explorer.Driver.FindElementByName("userPassword").SendKeys("classified");
explorer.Driver.FindElementByName("Login").Click();
Cursor = Cursors.Arrow;
}
это другой класс
public static IExplorerModel InitalizeRerouter()
{
IExplorerModel explorer = new IExplorerModel();
explorer.Options = new InternetExplorerOptions();
explorer.Options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
explorer.Options.InitialBrowserUrl = @"http://plzhelp/hi/login.asp";
explorer.Options.EnsureCleanSession = true;
explorer.Driver = new InternetExplorerDriver(explorer.Options);
return explorer;
}
вот код ошибки
The HTTP request to the remote WebDriver server for URL http://localhost:52438/session timed out after 60 seconds.'
Я также должен отметить, что каждый раз, когда он загружается, он загружается на другой порт.Не уверен, что это имеет значение, но у меня была мысль, что, возможно, я могу подключиться только к определенному порту, но я не вижу нигде, чтобы установить трассировку стека ошибок порта
в соответствии с запросом
at OpenQA.Selenium.Remote.HttpCommandExecutor.MakeHttpRequest(HttpRequestInfo requestInfo)
at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
at OpenQA.Selenium.IE.InternetExplorerDriver..ctor(InternetExplorerDriverService service, InternetExplorerOptions options)
at OpenQA.Selenium.IE.InternetExplorerDriver..ctor(InternetExplorerOptions options)
at RouteGuidesBiach.Classes.Initalizer.InitalizeRerouter() in C:\Users\u694172\source\repos\RouteGuidesBiach\RouteGuidesBiach\Classes\Initalizer.cs:line 26
update:
Когда у меня уже запущен процесс IE.exe, и я пытаюсь инициализировать веб-драйвер, он на самом деле будет работать ... понятия не имею, почему