Selenium — комплекс решений для автоматизации работы браузеров и тестирования веб-приложений. Инструменты имеют открытый исходный код, что дает возможность тестировщикам менять продукты Selenium под свои запросы.
Библиотека для управления различными браузерами WebDriver — основной продукт проекта Selenium. Она включает в себя комплекс драйверов для разных браузеров и набор клиентских библиотек для этих драйверов на разных языках программирования: Python, .Net, Java, Ruby, JavaScript, C#. Решение позволяет управлять браузерами как локально, так и удаленно, через сервер Selenium.
Решение имеет простой интерфейс и используется для проведения тестов на всех основных браузерах: Google Chrome, Firefox, Edge и Safari. Принцип работы: библиотека направляет команды браузеру с помощью протокола API и получает в ответ результаты проведенных тестов.
WebDriver воспроизводит следующие действия пользователей:
Решение проверяет корректность работы приложения, скорость его загрузки и другие базовые параметры в автоматическом режиме.
Одна из предыдущих версий Selenium WebDriver с устаревшим функционалом. Она не развивается, не адаптируется и мало используется.
Сервер для удаленного управления браузерами. Он поддерживает команды Selenium WebDriver и Selenium RC согласно следующему алгоритму действий:
Selenium Grid — комплекс серверов для создания распределенной сети, чтобы одновременно запустить несколько браузеров на большом количестве ПК. Решение не является отдельным продуктом и функционирует как один из режимов запуска Selenium Server. Оно делает возможным параллельное тестирование, что позволяет специалистам экономить время при проведении долгосрочных наборов тестов.
Распределенная сеть представляет собой «звезду». Она состоит из выделенного сервера — хаба, или коммутатора, — и остальных серверов — нод, или узлов. На коммутатор и узлы можно устанавливать разные браузеры, и они могут работать под управлением разных операционных систем.
Selenium Grid поддерживает кросс-браузерное и кросс-платформенное тестирование. Основная задача решения — подбор нужного узла во время старта браузера по запросу клиента. Требования включают в себя версию и тип браузера, вид операционной системы, архитектуру процессора и т. д.
Специальный плагин для браузеров Mozilla Firefox и Chrome. Он записывает действия пользователя, воспроизводит их и генерирует код для Selenium WebDriver или Selenium RC. Библиотеки повторяют те же процессы. Плагин — продукт Selenium для работы со сценариями тестирования веб-страниц. Его основное преимущество — возможность фиксировать и сохранять тесты для их дальнейшей обработки. А еще Selenium IDE занимает всего 240 Кб.
У тестировщиков с минимальным опытом программирования не получится использовать Selenium IDE на полную мощность и разрабатывать сложные тестовые наборы с его помощью, так как они редко пользуются функцией преобразования записанных тестов в код. Но даже в этом случае расширения будет достаточно для работы с линейными сценариями.
Selenium IDE предлагает:
В рамках программы «QA-инженер по тестированию: с нуля до автоматизатора» вы научитесь проводить автоматизированное тестирование на всех видах мобильных и веб-приложений с использованием фреймворка Selenium.