Запуск opera с помощью C# selenium
Я использую C#, Selenium (3.141.0) и MSTest.TestFramework для тестирования довольно сложного проекта веб-сайта. Моя цель довольно прямолинейна - протестировать сайт на различных браузерах для сайта (который используется во всем мире).
Нет никаких проблем с управлением Chrome, Firefox и IE от Selenium. Но я также хочу протестировать и поддержать Opera - которая не так распространена в США, но очень распространена в других местах.
Я вижу статьи, которые предполагают, что Opera может быть поддержана, но я не могу заставить ее работать.
Основной экземпляр (который терпит неудачу) - это:
драйвер iWebDriver = новый OperaDriver();
Возможно, мне не хватает некоторых аргументов для конструктора, например, пути к драйверу Opera (я скачал его operadriver.exe откуда https://github.com/operasoftware/operachromiumdriver/releases - и попытался добавить путь в качестве строкового аргумента - но это не сработало.
Я был бы признателен за любое руководство по образцу кода. В интернете есть много статей на эту тему, но я еще не нашел ни одного кода, который бы работал.
Что я уже пробовал:
Попробовал конструктор, отмеченный выше
David_Wimbley
Вы получаете какие-нибудь ошибки? Вы пробовали использовать RemoteWebDriver и передавать настройки браузера таким образом?
Ken-in-California
Привет, Дэвид.
Я попробовал создать экземпляр с помощью:
драйвер iWebDriver = новый OperaDriver("C:\\Opera\\", operaOptions, TimeSpan.Вызываем(1.0 д));
Ошибка, которую я получаю, заключается в следующем
OpenQA.Selenium.WebDriverException: 'неизвестная ошибка: не удается найти двоичный файл Opera
(Информация о драйвере: OperaDriver=2.42.3135 (O58),платформа=Windows NT 10.0.17763 x86_64)'
Кстати ... C:\\Opera\\" - это место нахождения operadriver.exe - загружено с сайта at https://github.com/operasoftware/operachromiumdriver/releases.
Я не пробовал RemoteWebDriver, потому что я инкапсулировал свой выбор браузера - в начале тестов тестер выбирает, какие браузеры запускать, а затем я
передайте Chrome, Firefox или IE iWebDriver в код для выбранного теста и последовательно запустите тот же Тест, что и каждый выбранный браузер.
David_Wimbley
Разве вы не должны указывать точный EXE-файл, а не относительный путь к папке?
Ken-in-California
Дэвид ... я попробовал это первым ... я использовал ... C:\\Opera\\operadriver.exe - ... и ошибка, которую я получил, была:
OpenQA.Selenium.DriverServiceNotFoundException: 'файл C:\Opera\operadriver.exe\operadriver.exe не существует. Драйвер можно скачать по адресу https://github.com/operasoftware/operachromiumdriver/releases'
В свете дублирования я обрезал свою нить на косой черте.
Mehdi Gholam
Opera на рабочем столе использует тот же движок, что и Chrome, поэтому вы его "должны" действовать так же.
Ken-in-California
Мехди - да - движок под Opera - это Chromium-поэтому я уверен, что он выполнит тот, который я выясню, как связать драйвер с исполняемым файлом браузера.