Доступен ли Selenium WebDriver для браузера Microsoft Edge?

На момент написания этой статьи название Microsoft Edge было только что официально объявлено браузером по умолчанию для новой Windows 10.

Возможно, преждевременно спрашивать, но я хотел бы знать, доступен ли для него новый Selenium WebDriver, а если нет, то есть ли какие-либо сведения о том, как долго мы можем ожидать, пока не увидим, что он разработан?

(Технический предварительный просмотр Windows 10 уже вышел, так что это не кажется мне глупым вопросом.)

5 ответов

Решение

Да, есть реализация WebDriver для Microsoft Edge. О его первоначальной доступности было объявлено 23 июля 2015 года. Языковые привязки в проекте с открытым исходным кодом Selenium были обновлены, чтобы воспользоваться преимуществами реализации этого драйвера, и эти обновления были выпущены в Selenium 2.47. Обратите внимание, что привязки к языку Java были повторно выпущены как 2.47.1 для исправления первоначальной проблемы. Первоначальная реализация имеет ограниченную функциональность, но Microsoft стремится к реализации полнофункциональной реализации драйвера, поэтому обновления будут в ближайшее время.

Microsoft предоставила MicrosoftWebDriver, который можно использовать для браузера Edge.

  1. Требуется загрузить правильную версию MicrosoftWebDriver, основываясь на номере сборки ОС

  2. Перейдите в Пуск> Настройки> Система> О программе и запишите номер сборки ОС.

  3. Загрузите нужную версию драйвера по этой ссылке - https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

  4. Если загруженный файл -.msi, установите его, чтобы получить драйвер.exe. Для одного из выпусков, прямой.exe может быть загружен.

  5. После загрузки MicrosoftWebDriver.exe мы можем использовать его в нашем тестовом скрипте, используя либо System.setProperty("webdriver.edge.driver", "местоположение драйвера"), либо используя переменную среды

Пример сценария будет выглядеть так:

System.setProperty("webdriver.edge.driver","C:\\Program Files (x86)\\Microsoft Web Driver\\MicrosoftWebDriver.exe"); //put actual location
WebDriver driver = new EdgeDriver();
driver.get("your link");

Обратитесь к этой статье за ​​подробной информацией - http://automationtestinghub.com/selenium-3-launch-microsoft-edge-with-microsoftwebdriver/

Драйвер Microsoft Edge для Selenium можно автоматически загрузить (для Java) с помощью библиотеки webdrivermanager следующим образом:

EdgeDriverManager.getInstance().setup();

Переменная webdriver.edge.driver также экспортируется webdrivermanager с правильным путем MicrosoftWebDriver.exe.

"на случай, если неясно, у Microsoft Edge будет поддержка WebDriver. Сегодня она недоступна, но находится в разработке? #msedgesummit" - твит от Джона Янсена, который - "Инженер Microsoft. Главный инженер-программист (nee Test")) Ведущий по проекту Spartan (урожденная Internet Explorer)." Вы можете найти его в твиттере @thejohnjansen и ждать объявления:)

Начиная с версии 18 EdgeHTML (которая появилась с версией Windows 1809), больше нет отдельной загрузки драйвера. Вы можете получить новый драйвер одним из двух способов:

  • Пуск - введите "Управление дополнительными функциями" - нажмите "Добавить функцию" - найдите "WebDriver"
  • Введите в командной строке с повышенными привилегиями следующее: "DISM.exe /Online /Add-Capability /CapabilityName:Microsoft.WebDriver~~~~0.0.1.0"

https://blogs.windows.com/msedgedev/2018/06/14/webdriver-w3c-recommendation-feature-on-demand/

Устаревшие версии по-прежнему доступны по адресу: https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

Обновление: похоже, что версия 18 теперь является устаревшей, и мы вернулись к установке отдельного веб-драйвера после перехода на Chromium. Ссылка прямо над ним по-прежнему приведет вас на страницу нужных драйверов.

Условие: на вашем компьютере установлена ​​Windows 10

  1. Загрузите указанную версию сервера Microsoft WebDriver для вашей сборки (в моем случае это MicrosoftWebDriver.exe для операционной системы: Windows 10 Pro 64-bit (10.0, Build 14393))
  2. Java-код Selenium WD для MS Edge выглядит следующим образом:

    System.setProperty ("webdriver.edge.driver", "D: \ Ripon \ MicrosoftWebDriver.exe");
    драйвер = новый EdgeDriver();

Спасибо за вашу помощь, я заблокировал свои тесты, выполнил поиск "EdgeDriver.exe", запрошенный реализацией selenium EdgeDriver, и нашел только MicrosoftWebDriver.

Я сделал это в C#, если это может кому-то помочь, основываясь на ваших предыдущих ответах:

Во-первых, вам нужно загрузить пакет nuget MicrosoftWebDriver, этот файл только сделает копию MicrosoftWebDriver.exe в папку назначения при компиляции, затем

private readonly string _localDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

Environment.SetEnvironmentVariable("webdriver.edge.driver", _localDir + "MicrosoftWebDriver.exe");
var driver = new EdgeDriver();

Надеюсь, что это может кому-то помочь.

Другие вопросы по тегам