Selenium — это переносимый фреймворк для тестирования веб-приложений. Selenium предоставляет инструмент воспроизведения для разработки функциональных тестов без необходимости изучения языка сценариев тестирования.
Что такое селен?
Selenium автоматизирует браузеры. Вот и все! Что вы будете делать с этой силой, зависит только от вас. В первую очередь он предназначен для автоматизации веб-приложений в целях тестирования, но, конечно, этим не ограничивается. Скучные задачи веб-администрирования также можно (и нужно!) автоматизировать.
Selenium поддерживается некоторыми из крупнейших поставщиков браузеров, которые предприняли (или предпринимают) шаги, чтобы сделать Selenium встроенной частью своего браузера. Это также основная технология в бесчисленных других инструментах автоматизации браузера, API и фреймворках.
Какая часть Selenium мне подходит?
Селен веб-драйвер
Если хотите
- создавать надежные наборы и тесты автоматизации регрессии на основе браузера
- масштабировать и распространять скрипты во многих средах
Тогда вы хотите использовать Selenium WebDriver; набор языковых привязок для управления браузером — так, как он должен управляться.
Selenium WebDriver является преемником Selenium Remote Control, который официально объявлен устаревшим. Selenium Server (используемый как WebDriver, так и Remote Control) теперь также включает встроенные возможности сетки.
Селен IDE
Если хотите
- создавать сценарии быстрого воспроизведения ошибок
- создавать сценарии, помогающие в автоматизированном исследовательском тестировании
Тогда вы хотите использовать Selenium IDE; надстройка для Chrome и Firefox, которая будет выполнять простую запись и воспроизведение взаимодействий с браузером.
Селен веб-драйвер
Самым большим изменением в Selenium за последнее время стало включение API WebDriver. Нативное управление браузером, как пользователь, локально или на удаленном компьютере с помощью Selenium Server, знаменует собой скачок вперед с точки зрения автоматизации браузера.
Selenium WebDriver подходит для той же роли, что и RC, и включает оригинальные привязки 1.x. Это относится как к языковым привязкам, так и к реализации кода, управляющего отдельным браузером. Это обычно называют просто «WebDriver» или иногда Selenium 2.
Selenium 1.0 + WebDriver = Selenium 2.0
- WebDriver разработан с использованием более простого и лаконичного интерфейса программирования, а также устранения некоторых ограничений в API Selenium-RC.
- WebDriver — это компактный объектно-ориентированный API по сравнению с Selenium1.0.
- Он намного эффективнее управляет браузером и преодолевает ограничения Selenium 1.x, которые повлияли на охват нашего функционального тестирования, такие как загрузка или загрузка файлов, всплывающие окна и диалоговые окна.
- WebDriver преодолевает ограничение Selenium RC Single Host origin policy
WebDriver — это имя ключевого интерфейса, для которого тесты должны быть написаны на Java, классы реализации, которые следует использовать, перечислены ниже:
ChromeDriver, EventFiringWebDriver, FirefoxDriver, HtmlUnitDriver, InternetExplorerDriver, PhantomJSDriver, RemoteWebDriver, SafariDriver
Для получения дополнительной информации о Selenium WebDriver см. разделы Документация и Удаленное управление в примечаниях по переходу на WebDriver.
Загрузки
Ниже вы можете найти последние версии всех компонентов Selenium. Вы также можете найти список предыдущих выпусков, исходный код и дополнительную информацию для пользователей Maven (Maven — популярный инструмент сборки Java).
Автономный сервер Selenium
Selenium Server необходим для запуска Remote Selenium WebDriver. Selenium 3.X больше не может запускать Selenium RC напрямую, он делает это через эмуляцию и интерфейс WebDriverBackedSelenium.
Скачать версию 3.141.59
Для запуска тестов Selenium, экспортированных из устаревшей IDE, используйте Selenium Html Runner.
Чтобы использовать Selenium Server в конфигурации Grid, см. вики-страницу.
Сервер драйверов Internet Explorer
Это необходимо, если вы хотите использовать новейшие и лучшие функции WebDriver InternetExplorerDriver. Пожалуйста, убедитесь, что это доступно в вашем $PATH (или %PATH% в Windows), чтобы драйвер IE работал должным образом.
Скачать версию 3.14.0 для (рекомендуется) 32-битный Windows IE или 64-битный Windows IE
CHANGELOG
Языковые привязки Selenium Client и WebDriver
Чтобы создавать сценарии, которые взаимодействуют с Selenium Server (Selenium RC, Selenium Remote WebDriver) или создавать локальные сценарии Selenium WebDriver, вам необходимо использовать клиентские драйверы для конкретного языка. Эти ла
Языки включают клиентов как 1.x, так и 2.x.
Хотя языковые привязки для других языков существуют, это основные, которые поддерживаются основным проектом, размещенным на GitHub.
Java3.141.592018–11–14 Скачать
C#3.14.02018–08–02 Скачать
Ruby3.14.02018–08–03 Скачать
Python3.14.02018–08–02 Скачать
Javascript (Node)4.0.0-alpha.12018–01–13 Скачать
С# NuGet
Последний выпуск NuGet — 3.14.0, выпущенный 2 августа 2018 г.
- ВебДрайвер
- WebDriverBackedSelenium
- "Служба поддержки"
- RC (Финальная версия 3.1.0 Выпущена 16 февраля 2017 г.)
SafariDriver — УСТАРЕЛО — используйте SafariDriver от Apple с Safari 10+
SafariDriver теперь требует ручной установки расширения перед автоматизацией.
- Последний релиз 2.48.0
- Вики-страница
Селен IDE
Selenium IDE — это плагин для Chrome и Firefox, который записывает и воспроизводит взаимодействие пользователя с браузером. Используйте это либо для создания простых сценариев, либо для помощи в исследовательском тестировании.
Загрузите последнюю выпущенную версию для Chrome или для Firefox или просмотрите Примечания к выпуску.
Загрузите предыдущие версии IDE здесь.
Сторонние драйверы, привязки и плагины
Selenium можно расширить с помощью плагинов. Вот ряд плагинов, созданных и поддерживаемых третьими сторонами. Для получения дополнительной информации о том, как создать свой собственный плагин или внести его в список, обратитесь к документации.
Обратите внимание, что эти плагины не поддерживаются, не обслуживаются, не размещаются и не одобряются проектом Selenium. Кроме того, имейте в виду, что перечисленные ниже подключаемые модули не обязательно лицензируются в соответствии с лицензией Apache License v.2.0. Некоторые плагины доступны под другой лицензией на бесплатное программное обеспечение с открытым исходным кодом; другие доступны только по частной лицензии. Любые вопросы о плагинах и их лицензии на распространение необходимо задавать соответствующим разработчикам.