Selenium – это не отдельный инструмент, а целый проект с открытым исходным кодом (open source), в рамках которого разрабатывается ряд программных продуктов для автоматизированного тестирования Web приложений.
- Selenium IDE
- Selenium WebDriver
- Selenium RC (не поддерживается)
- Selenium Server + Selenium Grid
Selenium Integrated Development Environment (IDE) – это плагин для Firefox и Google Chrome браузеров, который позволяет записывать свои действия и воспроизводить их. Он своего рода является продвинутым рекордером, код которого можно редактировать и дебажить.
Selenium WebDriver – является самым популярным из вышеперечисленных инструментов, который представляет собой программную библиотеку для управления различными браузерами. Т.е. это не готовая программа со своим пользовательским интерфейсом, а библиотека, которая позволяет разрабатывать программы, управляющие поведением браузера.
Selenium Remote Control (RC) – с названия можно понять, что это инструмент для удаленного управления, в нашем случае браузера. Является первой версией библиотеки, которая с функциональной точки зрения значительно уступает WebDriver и уже никак не поддерживается и не развивается в наше время.
Selenium Server – позволяет запускать автоматизированные тесты с удаленных машин. Базово это происходит следующим образом: выделяем две машины для тестирования, первая для выполнения в браузере самих автотестов и вторая, на которой запускается драйвер RemoteWebDriver, задачей которого является передача команд на первую машину.
Selenium Grid – состоит из набора Selenium серверов, предназначенных для организации распределённой сети, позволяющей параллельно запускать много браузеров на большом количестве машин. Среди серверов выделяется один основной, который является коммутатором для всех остальных, которые можно назвать его узлами. Одной из функций этого продукта является поиск подходящих узлов, когда во время старта браузера указываются требования к нему – тип браузера, версия, операционная система, архитектура процессора и так далее…

