Selenium, Selenoid, Selenide, Selendroid… Что все это значит?

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Привет, Хабр!

В мире автоматизации новичку ориентироваться довольно сложно. Приходится узнавать множество понятий, разбираться в особенностях существующих инструментов. Например, вот: Selenium, Selenide, Selenoid, Selendriod — что это, чем отличается? Да и можно ли их сравнивать?

Написал статью, чтобы помочь в этом разобраться. Кому интересно, добро пожаловать под кат!



Selenium


Selenium — это инструмент для автоматизированного управления браузерами.

В рамках проекта Selenium разрабатывается серия программных продуктов с открытым исходным кодом:

  • Selenium Server,
  • Selenium Grid,
  • Selenium IDE и т.д.

Selenium Server – это программа, которая позволяет управлять браузерами с помощью специальных драйверов. Она должна находиться на том же компьютере, что и браузер, с которым нам предстоит работать.

После установки Selenium Server к нему можно обращаться с другого компьютера для удаленного управления браузерами по специальному протоколу, который написан поверх HTTP.

Коротко — Selenium Server помогает управлять браузерами на определенной машине.

Более подробно можно почитать здесь: https://www.seleniumhq.org/

Selenium Grid устанавливается на одном компьютере и может работать удаленно с несколькими другим, на которых установлены Selenium Server.

Он создан для того, чтобы запускать тесты на большом количестве машин, обращаясь только к одной, на которой установлен Selenium Grid.

Для создания сессии (т.е. запуска браузера) мы всегда будем приходить на компьютер, где стоит Selenium Grid. Он уже сам решит, какая машина менее нагружена для этого и туда и перенаправит команду.

Все машины, с которыми работает Selenium Grid, могут работать под управлением разных операционных систем, на них могут быть установлены разные браузеры.

Коротко — Selenium Grid нужен для организации работы с несколькими машинами, где установлен Selenium Server.

Более подробно можно почитать здесь: https://www.seleniumhq.org/docs/07_selenium_grid.jsp

Selenium IDE – это плагин к браузеру Firefox, с помощью которого можно записывать и воспроизводить действия пользователя.

Он не имеет особого отношения ни к Selenium Server, ни к Selenium Grid и позволяет работать только с локальным браузером.

Более подробно можно почитать здесь: https://www.seleniumhq.org/selenium-ide/

Selenide


Selenide — это один из фреймворков для автоматизированного тестирования веб-приложений. С его помощью можно быстро и относительно просто писать код, который будет формировать и отправлять HTTP-команды на Selenium Server или Selenium Grid.

Он заточен под то, чтобы писать такие сценарии, которые будут проверять работу веб-приложения: поиск нужных элементов, проверка событий, взаимодействие с UI и так далее.

Несмотря на схожесть названия с линейкой программ Selenium, сам Selenide разрабатывают другие ребята.

Коротко — с Selenide проще писать код, который заточен именно под тестирование веб-приложения.

Более подробно можно почитать здесь: https://ru.selenide.org/

Selenoid


Selenoid — это программа, которая позволяет управлять браузерами и Android-эмуляторами с помощью специальных драйверов. Умеет запускать каждый из них изолированно в Docker-контейнере.

Selenoid представляет собой альтернативное решение Selenium Server, хотя суть та же — организация работы драйверов.

Основная идея Selenoid состоит в том, чтобы запускать новый контейнер для каждой сессии (запуска нового браузера или эмулятора) и останавливать его сразу же после закрытия сессии.

Selenoid позволяет поддерживать высокую нагрузку без дополнительных ресурсозатрат.

Более подробно можно почитать здесь: https://aerokube.com/selenoid/latest/

Selendroid


Selendroid — это фреймворк для автоматизированного тестирования мобильных приложений на базе Android.

Используется на ранних версиях Android — до 17 level api (android 4.2). Но не выше.

Коротко — это уже не очень актуальные фреймворк для работы с Android-приложениями.

Более подробно можно почитать здесь: http://selendroid.io

Итого


Инструментов много, каждый предназначен для своих задач. Постарался коротко и без воды рассказать про группу Selen-проектов. :)

Если такой формат будет интересен, далее сделаю обзор на инструменты для мобильной автоматизации.

Спасибо за внимание.
Источник: https://habr.com/ru/post/463525/


Интересные статьи

Интересные статьи

Всем привет! Не так давно на работе в рамках тестирования нового бизнес-процесса мне понадобилась возможность авторизации под разными пользователями. Переход в соответствующий р...
Всем привет. Когда я искал информацию о журналировании (аудите событий) в Bitrix, на Хабре не было ни чего, в остальном рунете кое что было, но кто же там найдёт? Для пополнения базы знаний...
Однажды, в понедельник, мне пришла в голову мысль — "а покопаюсь ка я в новом ядре" (новым относительно, но об этом позже). Мысль не появилась на ровном месте, а предпосылками для нее стали: ...
Периодически мне в разных вариантах задают вопрос, который «в среднем» звучит так: «что лучше: заказать интернет-магазин на бесплатной CMS или купить готовое решение на 1С-Битрикс и сделать магазин на...
Получить трафик для интернет-магазина сегодня не проблема. Есть много каналов его привлечения: органическая выдача, контекстная реклама, контент-маркетинг, RTB-сети и т. д. Вопрос в том, как вы распор...