Фреймворк автоматизации тестирования на Node.js для end-to-end, модульных и компонентных тестов в браузерах и мобильных приложениях через WebDriver, BiDi и Appium.
SeleniumHQ/selenium
Selenium — набор инструментов и библиотек для автоматизации браузеров на основе стандарта W3C WebDriver.
- Звёзды
- 34,563
- Форки
- 8,730
- Открытые issues
- 196
- Последний коммит
- 18 часов назад
Что это?
Selenium предоставляет инфраструктуру для спецификации W3C WebDriver — независимого от платформы и языка интерфейса для управления веб-браузерами. С его помощью можно создавать сценарии для тестирования веб-приложений и автоматизировать повторяющиеся задачи в браузере.
Проект поддерживает привязки для нескольких языков, включая Java, Python, C#, JavaScript, Ruby и Rust, и работает со всеми основными веб-браузерами. Browser drivers и Selenium Manager помогают находить и настраивать браузеры и драйверы к ним.
Этот репозиторий предназначен в первую очередь для участников проекта. Сборка выполняется с помощью Bazel; в репозитории также есть инструкции по настройке локальной среды разработки, запуску тестов с фильтрацией по размеру и тегам и процессу выпуска релизов.
Ключевые возможности
- 01Реализует спецификацию W3C WebDriver для управления разными браузерами.
- 02Предоставляет привязки для Java, Python, C#, JavaScript, Ruby и Rust.
- 03Включает Selenium Manager для поиска браузеров и драйверов.
- 04Поддерживает headless-режим в Chrome, Edge и Firefox.
- 05Собирается с помощью Bazel и позволяет фильтровать тесты по размеру и тегам.
Сценарии использования
- Написание сквозных тестов веб-приложений в нескольких браузерах.
- Автоматизация повторяющихся задач в браузере, например заполнения форм или сбора данных.
- Создание инфраструктуры для тестирования браузеров с помощью Selenium Grid.
Быстрый старт
- 1
Установите Bazelisk — обёртку для Bazel
- 2
Установите Java JDK 17 или новее и задайте JAVA_HOME
- 3
Соберите Selenium Grid
bazel build grid
Что важно знать
- README предназначен для участников разработки; конечным пользователям предлагается обратиться к отдельному User Manual.
- Для сборки необходимы Bazel, JDK 17 или новее и платформенные toolchain-инструменты, поэтому настройка довольно сложная.
- Настройка в Windows требует дополнительных усилий: нужны MSYS2 и инструменты сборки Visual Studio.
- На Mac с Apple Silicon может потребоваться изменить настройки Rosetta.
В подборках
Темы
Частые вопросы
- Что такое selenium?
- Selenium — набор инструментов и библиотек для автоматизации браузеров на основе стандарта W3C WebDriver. Selenium предоставляет инфраструктуру для спецификации W3C WebDriver — независимого от платформы и языка интерфейса для управления веб-браузерами. С его помощью можно создавать сценарии для тестирования веб-приложений и автоматизировать повторяющиеся задачи в браузере.
- selenium можно использовать бесплатно? Какая у него лицензия?
- selenium распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- selenium всё ещё поддерживается?
- Активно поддерживается. Последний коммит в selenium — 24 окт. 2026 г..
- Для чего можно использовать selenium?
- Написание сквозных тестов веб-приложений в нескольких браузерах. Автоматизация повторяющихся задач в браузере, например заполнения форм или сбора данных. Создание инфраструктуры для тестирования браузеров с помощью Selenium Grid.
- Как установить selenium?
- Установите Bazelisk — обёртку для Bazel Установите Java JDK 17 или новее и задайте JAVA_HOME Соберите Selenium Grid: bazel build grid
- Где скачать selenium?
- Исходный код и инструкции по установке — на GitHub: https://github.com/SeleniumHQ/selenium
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Библиотека Python для автоматизации Chromium, Firefox и WebKit через единый API с синхронным и асинхронным вариантами.
Playwright — фреймворк для тестирования и автоматизации веб-приложений, который управляет Chromium, Firefox и WebKit через единый API.
Midscene.js — фреймворк для E2E-тестирования на основе компьютерного зрения: он позволяет описывать шаги UI-тестов и проверки на естественном языке для веб-, мобильных и десктопных приложений.
Фреймворк для сквозного тестирования веб- и мобильных приложений: описывайте цели тестов обычным языком, а агент будет управлять приложением.
Python-библиотека для автоматизации браузера на базе Selenium, позволяющая находить элементы по видимым подписям, а не селекторам.