Repolode
stevepryde

stevepryde/thirtyfour

Клиентская библиотека Selenium WebDriver для Rust, предназначенная для автоматизированного тестирования веб-интерфейсов.

Звёзды
1,443
Форки
102
Открытые issues
1
Последний коммит
16 дней назад

Что это?

thirtyfour — клиент для Rust, реализующий протокол Selenium / W3C WebDriver и предназначенный для автоматизированного сквозного тестирования веб-приложений. Библиотека может запускать сессии браузера напрямую через драйвер, например chromedriver, или через Selenium Standalone либо Grid.

Библиотека поддерживает основные возможности WebDriver: поиск элементов по селекторам — test ID, id, class, CSS, tag и XPath, ввод клавиш и их сочетаний, выполнение JavaScript, цепочки действий, работу с cookies, переключение между фреймами, окнами и alert, shadow DOM и создание скриншотов в PNG. Интерфейс запросов поддерживает явные ожидания и предикаты, а обёртки компонентов помогают структурировать тесты в стиле page object. Средство запуска браузерных тестов пытается асинхронно очищать ресурсы при ошибках и паниках.

Необязательные feature flags добавляют типизированные команды Chrome DevTools Protocol, подписку на события CDP через WebSocket и кроссбраузерную поддержку WebDriver BiDi. Крейt распространяется по двойной лицензии MIT или Apache 2.0 и требует Rust 1.88 или новее.

Ключевые возможности

  • 01Поддерживает все методы W3C WebDriver и WebElement.
  • 02Находит элементы по селекторам test ID, id, class, CSS, tag и XPath.
  • 03Предоставляет интерфейс запросов с явными ожиданиями и обёртки компонентов для page object.
  • 04Поддерживает типизированные команды Chrome DevTools Protocol и необязательную подписку на события CDP.
  • 05Поддерживает кроссбраузерный WebDriver BiDi при включении соответствующего feature flag.
  • 06Создаёт PNG-скриншоты всего окна браузера или отдельных элементов.

Сценарии использования

  • Сквозное тестирование интерфейсов веб-приложений на Rust.
  • Перенос существующих сценариев автоматизации Selenium в кодовую базу на Rust.
  • Автоматизация браузерных сценариев, которым нужен типизированный доступ к возможностям Chrome DevTools.

Быстрый старт

  1. 1

    Добавьте thirtyfour в зависимости проекта на Rust (cargo add thirtyfour).

  2. 2

    Запустите сервер WebDriver, например chromedriver, а затем выполните пример async.

    cargo run --example tokio_async

Что важно знать

  • Для запуска тестов требуется работающий сервер WebDriver или драйвер браузера, например chromedriver.
  • В метаданных лицензия указана как NOASSERTION, хотя в README сказано о двойной лицензии MIT или Apache 2.0.

В подборках

Темы

Частые вопросы

Что такое thirtyfour?
Клиентская библиотека Selenium WebDriver для Rust, предназначенная для автоматизированного тестирования веб-интерфейсов. thirtyfour — клиент для Rust, реализующий протокол Selenium / W3C WebDriver и предназначенный для автоматизированного сквозного тестирования веб-приложений. Библиотека может запускать сессии браузера напрямую через драйвер, например chromedriver, или через Selenium Standalone либо Grid.
thirtyfour можно использовать бесплатно? Какая у него лицензия?
thirtyfour распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
thirtyfour всё ещё поддерживается?
Активно поддерживается. Последний коммит в thirtyfour — 21 окт. 2026 г..
Для чего можно использовать thirtyfour?
Сквозное тестирование интерфейсов веб-приложений на Rust. Перенос существующих сценариев автоматизации Selenium в кодовую базу на Rust. Автоматизация браузерных сценариев, которым нужен типизированный доступ к возможностям Chrome DevTools.
Как установить thirtyfour?
Добавьте thirtyfour в зависимости проекта на Rust (cargo add thirtyfour). Запустите сервер WebDriver, например chromedriver, а затем выполните пример async.: cargo run --example tokio_async
Где скачать thirtyfour?
Исходный код и инструкции по установке — на GitHub: https://github.com/stevepryde/thirtyfour

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Фреймворк автоматизации тестирования на Node.js для end-to-end, модульных и компонентных тестов в браузерах и мобильных приложениях через WebDriver, BiDi и Appium.

9,9 тыс.+6 за неделю2,7 тыс.TypeScriptMITАктивно поддерживаетсяОбновлён 15 часов назад

JavaScript-фреймворк для сквозного тестирования браузерных и мобильных приложений: тесты пишутся как понятные пользователю шаги и запускаются на разных движках.

4,3 тыс.+3 за неделю756JavaScriptMITОбновлён 4 дня назад