Repolode
stevepryde

stevepryde/thirtyfour

Biblioteca cliente de Selenium WebDriver para Rust, usada para escribir pruebas de interfaz automatizadas para sitios web.

Estrellas
1,443
Forks
102
Issues abiertos
1
Último commit
hace 16 días

¿Qué es?

thirtyfour es un cliente de Rust para el protocolo Selenium / W3C WebDriver, pensado para pruebas end-to-end automatizadas de aplicaciones web. Puede iniciar sesiones del navegador directamente mediante un driver como chromedriver, o a través de Selenium Standalone o Grid.

La biblioteca cubre las funciones más habituales de WebDriver: buscar elementos mediante selectores como test ID, id, class, CSS, tag y XPath; enviar teclas y combinaciones de teclas; ejecutar JavaScript; usar cadenas de acciones y cookies; cambiar entre frames, ventanas y alertas; interactuar con el shadow DOM, y capturar screenshots PNG. La interfaz de consultas admite esperas explícitas y predicados, y los wrappers de componentes ayudan a estructurar las pruebas al estilo page object. Un runner de pruebas de navegador intenta realizar una limpieza asíncrona cuando se producen errores o panics.

Las feature flags opcionales añaden comandos tipados de Chrome DevTools Protocol, suscripción a eventos CDP mediante WebSocket y compatibilidad multiplataforma con WebDriver BiDi. El crate cuenta con licencia dual MIT o Apache 2.0 y requiere Rust 1.88 o posterior.

Funciones clave

  • 01Es compatible con todos los métodos de W3C WebDriver y WebElement.
  • 02Busca elementos mediante selectores test ID, id, class, CSS, tag y XPath.
  • 03Ofrece una interfaz de consultas con esperas explícitas y wrappers de componentes para page objects.
  • 04Incluye comandos tipados de Chrome DevTools Protocol y permite suscribirse opcionalmente a eventos CDP.
  • 05Admite WebDriver BiDi en distintos navegadores mediante una feature flag opcional.
  • 06Captura screenshots PNG de todo el navegador o de elementos individuales.

Casos de uso

  • Pruebas end-to-end de interfaz para aplicaciones web escritas en Rust.
  • Migración de scripts de automatización de Selenium existentes a una base de código Rust.
  • Automatización de flujos de trabajo del navegador que requieren acceso tipado a las funciones de Chrome DevTools.

Inicio rápido

  1. 1

    Añade thirtyfour como dependencia a tu proyecto de Rust (cargo add thirtyfour).

  2. 2

    Inicia un servidor WebDriver, como chromedriver, y ejecuta el ejemplo async.

    cargo run --example tokio_async

Antes de usarlo

  • Para ejecutar las pruebas, se necesita un servidor WebDriver en funcionamiento o un controlador de navegador como chromedriver.
  • En los metadatos, la licencia aparece como NOASSERTION, aunque el README indica una licencia dual MIT o Apache 2.0.

En colecciones

Temas

Preguntas frecuentes

¿Qué es thirtyfour?
Biblioteca cliente de Selenium WebDriver para Rust, usada para escribir pruebas de interfaz automatizadas para sitios web. thirtyfour es un cliente de Rust para el protocolo Selenium / W3C WebDriver, pensado para pruebas end-to-end automatizadas de aplicaciones web. Puede iniciar sesiones del navegador directamente mediante un driver como chromedriver, o a través de Selenium Standalone o Grid.
¿thirtyfour es gratuito? ¿Qué licencia tiene?
thirtyfour es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿thirtyfour sigue mantenido?
Mantenimiento activo. El último commit de thirtyfour fue el 21 oct 2026.
¿Para qué puedo usar thirtyfour?
Pruebas end-to-end de interfaz para aplicaciones web escritas en Rust. Migración de scripts de automatización de Selenium existentes a una base de código Rust. Automatización de flujos de trabajo del navegador que requieren acceso tipado a las funciones de Chrome DevTools.
¿Cómo se instala thirtyfour?
Añade thirtyfour como dependencia a tu proyecto de Rust (cargo add thirtyfour). Inicia un servidor WebDriver, como chromedriver, y ejecuta el ejemplo async.: cargo run --example tokio_async
¿Dónde consigo thirtyfour?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/stevepryde/thirtyfour

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados