🔬Selenium

WebDriver протокол (2004). Все браузеры, все языки. Grid для параллелизма. Медленнее современных, но стандарт индустрии.

📖2 мин чтения📊Уровень 7🗺️2 подтем📅16 апреля 2026 г.

Загрузка карты...

Selenium — открытый фреймворк для автоматизации веб-браузеров, ставший индустриальным стандартом тестирования. Создан Джейсоном Хаггинсом в ThoughtWorks в 2004 году. Основа — протокол WebDriver (W3C стандарт), позволяющий управлять любым браузером программно.

Компоненты Selenium

  • Selenium WebDriver — основной API; управляет Chrome, Firefox, Safari, Edge через их нативные драйверы (ChromeDriver, GeckoDriver). Поддерживает Java, Python, C#, JavaScript, Ruby
  • Selenium Grid — параллельный запуск тестов на нескольких машинах или браузерах одновременно
  • Selenium IDE — браузерное расширение для записи тестов (запись и воспроизведение действий)

Пример теста (Python)

Типичный тест: открыть браузер → перейти на страницу → найти элемент → взаимодействовать → проверить результат. Для поиска элементов используют CSS-селекторы, XPath, id, name. Паттерн Page Object Model (POM) отделяет логику тестов от локаторов элементов.

Сравнение с современными альтернативами

  • Playwright (Microsoft, 2020) — быстрее, встроенный auto-wait, лучше работает с SPA
  • Cypress — в браузерной среде, легче в настройке, только JavaScript/TypeScript
  • Puppeteer — только Chrome, от Google

Selenium сохраняет позиции благодаря зрелости, огромному сообществу и поддержке всех языков. Grid удобен для enterprise CI/CD.