Saltar al contenido principal

WebdriverIO

Framework de prueba de automatización de navegadores y móviles de próxima generación para Node.js

Patrocinado por
🌎

Prueba en Entornos Reales

WebdriverIO te permite probar en navegadores o dispositivos móviles reales utilizados por tus usuarios.

🔩

Versátil y Rico en Características

Usa WebdriverIO para pruebas e2e completas o pruebas unitarias y de componentes en el navegador.

💤

Espera Automática

WebdriverIO espera automáticamente a que los elementos aparezcan antes de interactuar con ellos.

📒

Basado en Estándares Web

Soporte para múltiples navegadores a través de automatización mediante WebDriver y WebDriver Bidi.

📱

Soporte Nativo para Móviles

Ejecuta WebdriverIO en dispositivos móviles reales, smart TVs u otros dispositivos IoT a través de Appium.

🫂

Comunidad Comprometida

Manteniendo un canal de soporte con más de 8 mil miembros y un rico ecosistema de plugins mantenidos por la comunidad.


import { $, expect } from '@wdio/globals'
import { render } from '@testing-library/vue'
import HelloWorld from '../../src/components/HelloWorld.vue'

describe('Component Testing', () => {
it('increments value on click', async () => {
const { getByText } = render(HelloWorld)
const btn = getByText('count is 0')

// transform into WebdriverIO element
const button = await $(btn)

// interact with element like a real user
await button.click()
await button.click()

await expect(button).toMatchInlineSnapshot(
"count is 2"
)
})
})

¡Pruebas E2E y Unitarias / de Componentes en navegadores reales!

WebdriverIO es un framework todo en uno para el desarrollo de aplicaciones web. Te permite ejecutar pruebas de componentes pequeñas y ligeras, así como escenarios de pruebas e2e en el navegador o en un dispositivo móvil. Esto garantiza que realices las pruebas en un entorno utilizado por tus usuarios.

Viene con estrategias de selección inteligentes que simplifican interactuar, por ejemplo, con React components o ejecutar consultas de selección profundas con árboles de DOM shadow anidados. Como las interacciones ocurren a través de un protocolo de automatización estandarizado, está garantizado que se comporten de forma nativa y no sean solo emuladas por JavaScript.

Configuración sencilla para pruebas de componentes web con:

Vue.jsNuxtSveltePreactSolidJSLitStencil

Comienza con WebdriverIO en Segundos

El test runner de WebdriverIO viene con una interfaz de línea de comandos que proporciona una potente utilidad de configuración y te ayuda a crear tu configuración de pruebas en menos de un minuto. ¡Te permite elegir entre las integraciones de framework de pruebas disponibles y fácilmente te permite añadir todos los plugins de reportes y servicios compatibles!

Con solo un simple comando puedes configurar un conjunto de pruebas completo:


$ npm init wdio@latest ./

Empieza a aprender más sobre WebdriverIO y cómo comenzar en YouTube.

Ver Charlas sobre WebdriverIO

La comunidad alrededor de WebdriverIO habla activamente en varios grupos de usuarios o conferencias sobre temas específicos relacionados con pruebas automatizadas con WebdriverIO. Mira esta charla en Mis características favoritas de WebdriverIO de Julia Pottinger en Open Quality Conference.

También hay muchos canales de YouTube con tutoriales útiles de miembros de la comunidad como Klamping, Seventeenth Sep o Automation Bro.

Integración con Google Lighthouse

WebdriverIO no solo ejecuta automatización basada en el protocolo WebDriver, también aprovecha las APIs nativas del navegador para permitir integraciones con herramientas populares para desarrolladores como Chrome DevTools o Google Lighthouse. Con el plugin @wdio/lighthouse-service tienes acceso a comandos para validar si tu aplicación es una aplicación PWA válida, así como a comandos para capturar métricas de rendimiento frontend como `speedIndex` y otras.

Integración con herramientas de desarrollo como:

Chrome DevToolsGoogle LighthouseAxe Accessibility Engine

await browser.emulate('device', 'iPhone X')
await browser.enablePerformanceAudits({
networkThrottling: 'Good 3G',
cacheEnabled: true,
formFactor: 'mobile'
})

// open application under test
await browser.url('https://localhost:3000')

expect(await browser.getMetrics().firstMeaningfulPaint)
.toBeBelow(2500)

const pwaCheckResult = await browser.checkPWA()
expect(pwaCheckResult.passed).toBe(true)

¿Quién está usando WebdriverIO?

  • Google
  • Netflix
  • Microsoft
  • Mozilla
  • Buoyant
  • SAP
  • Salesforce
  • Hilton
  • Charles Schwab
  • JW Player
  • BBVA
  • GoPro
  • Algolia
  • Financial Times
  • Zendesk
  • 1&1
  • Avira
  • Deloitte
  • Rabobank
  • Bedrock Streaming

Código Abierto y Gobernado Abiertamente

Somos un proyecto de código abierto con un fuerte compromiso con la transparencia y la gobernanza comunitaria. Formamos parte de la OpenJS Foundation que es parte de la Linux Foundation. El proyecto está completamente dirigido por voluntarios y financiado por empresas comprometidas que quieren ver el proyecto tener éxito. El equipo del proyecto está agradecido por el generoso patrocinio de estas empresas.

💎 Patrocinadores Premium

🥇 Patrocinadores Oro

Si utilizas WebdriverIO dentro de tu organización, por favor considera apoyar el proyecto convertirte en patrocinador. Esto nos ayudará a mantener el proyecto en funcionamiento y evolucionando.

Nos gustaría expresar nuestro más sincero agradecimiento a todos los colaboradores que han ayudado a hacer de WebdriverIO la poderosa herramienta que es hoy. ¡Tu dedicación y esfuerzo son realmente apreciados!

Welcome! How can I help?

WebdriverIO AI Copilot