Скидки до 28% + 2-ая профессия бесплатно и подарки на 50 000₽

Главная | Все статьи | Код

Что такое Selenium?

Тестирование Время чтения статьи ~4 минуты
Что такое Selenium? главное изображение

Selenium — комплекс решений для автоматизации работы браузеров и тестирования веб-приложений. Инструменты имеют открытый исходный код, что дает возможность тестировщикам менять продукты Selenium под свои запросы.

Автотестирование на JavaScript c нуля

Попробуйте себя с 5 бесплатных уроков

Selenium: преимущества и недостатки

  • Selenium — бесплатное кросс-платформенное и кросс-браузерное программное решение.
  • Функциональность Selenium WebDriver можно легко расширить: библиотека легко интегрируется с другими фреймворками и инструментами тестирования.
  • Selenium позволяет тестировать только веб-приложения.
  • Для максимально эффективной работы в Selenium необходимо уметь программировать и писать скрипты на продвинутом уровне.

Основные продукты Selenium

Selenium WebDriver

Библиотека для управления различными браузерами WebDriver — основной продукт проекта Selenium. Она включает в себя комплекс драйверов для разных браузеров и набор клиентских библиотек для этих драйверов на разных языках программирования: Python, .Net, Java, Ruby, JavaScript, C#. Решение позволяет управлять браузерами как локально, так и удаленно, через сервер Selenium.

Решение имеет простой интерфейс и используется для проведения тестов на всех основных браузерах: Google Chrome, Firefox, Edge и Safari. Принцип работы: библиотека направляет команды браузеру с помощью протокола API и получает в ответ результаты проведенных тестов.

WebDriver воспроизводит следующие действия пользователей:

  • переход по URL;
  • поиск по страницам сайта;
  • заполнение форм.

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

Selenium RC (Remote Control)

Одна из предыдущих версий Selenium WebDriver с устаревшим функционалом. Она не развивается, не адаптируется и мало используется.

Selenium Server

Сервер для удаленного управления браузерами. Он поддерживает команды Selenium WebDriver и Selenium RC согласно следующему алгоритму действий:

  1. На компьютере, где необходимо настроить браузер, устанавливается и запускается сервер.
  2. На другом компьютере запускается программа со специальным драйвером RemoteWebDriver. Она подключается к серверу на первом компьютере и отправляет ему команды.
  3. Сервер запускает браузер и выполняет команды с помощью драйвера, соответствующему этому браузеру.

QA-инженер с нуля до автоматизатора

Рекомендуем начать с бесплатных уроков

Selenium Grid

Selenium Grid — комплекс серверов для создания распределенной сети, чтобы одновременно запустить несколько браузеров на большом количестве ПК. Решение не является отдельным продуктом и функционирует как один из режимов запуска Selenium Server. Оно делает возможным параллельное тестирование, что позволяет специалистам экономить время при проведении долгосрочных наборов тестов.

Распределенная сеть представляет собой «звезду». Она состоит из выделенного сервера — хаба, или коммутатора, — и остальных серверов — нод, или узлов. На коммутатор и узлы можно устанавливать разные браузеры, и они могут работать под управлением разных операционных систем.

Selenium Grid поддерживает кросс-браузерное и кросс-платформенное тестирование. Основная задача решения — подбор нужного узла во время старта браузера по запросу клиента. Требования включают в себя версию и тип браузера, вид операционной системы, архитектуру процессора и т. д.

Selenium IDE

Специальный плагин для браузеров Mozilla Firefox и Chrome. Он записывает действия пользователя, воспроизводит их и генерирует код для Selenium WebDriver или Selenium RC. Библиотеки повторяют те же процессы. Плагин — продукт Selenium для работы со сценариями тестирования веб-страниц. Его основное преимущество — возможность фиксировать и сохранять тесты для их дальнейшей обработки. А еще Selenium IDE занимает всего 240 Кб.

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

Познакомьтесь с тестированием бесплатно

Начать с 5 бесплатных уроков

Selenium IDE предлагает:

  • Простой механизм отладки процесса тестирования с помощью контрольных точек и приостановки исключений.
  • Устойчивые тесты, где плагин воспроизводит тесты до окончания сессии, даже если один из элементов дает сбой во время его повторения.
  • Возможность повторно использовать тестовый кейс внутри другого.

В рамках программы «QA-инженер по тестированию: с нуля до автоматизатора» вы научитесь проводить автоматизированное тестирование на всех видах мобильных и веб-приложений с использованием фреймворка Selenium.

Похожие статьи
Рекомендуемые программы
профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 26 декабря
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря