Automatización con WebDriver BiDi ahora disponible en BrowserStack

Matthias Rohmer
Matthias Rohmer

Durante los últimos tres años, el equipo de automatización del navegador Chrome ha estado colaborar con otros importantes proveedores de navegadores y herramientas, como BrowserStack, Crear WebDriver BiDi, un nuevo protocolo de automatización de navegadores que permite flujos de trabajo de automatización bidireccional en los navegadores. Estos Anteriormente, los flujos de trabajo solo eran posibles con la versión patentada de Chrome Herramientas para desarrolladores en navegadores basados en Chromium.

Hoy se marca un hito importante en este esfuerzo compartido, ya que WebDriver BiDi por fin está listo para la producción de los desarrolladores, comenzando por BrowserStack hoy mismo.

Selenium y BrowserStack

Recientemente, BrowserStack se convirtió en socio oficial de desarrollo de Selenium, un framework maduro de automatización de navegadores de código abierto que también contribuyó a WebDriver BiDi. Esta asociación es un testimonio de la continuidad de BrowserStack en un próspero ecosistema de pruebas, en el que BrowserStack también emplea varios encargados de mantenimiento centrales de Selenium.

Parte del proyecto Selenium es Selenium Grid, que te permite ejecutar pruebas en varios dispositivos de forma simultánea. Pero establecer una cuadrícula por su cuenta, adquiriendo y manteniendo decenas de dispositivos diferentes, y mantenerlos disponibles puede ser desafiante o incluso imposible para algunas personas.

Las soluciones alojadas de Selenium Grid, como BrowserStack, pueden facilitar la ejecución de pruebas en varias plataformas y dispositivos diferentes, sin administrarlos en tu por sí solas.

WebDriver BiDi sobre la red de selenio

Selenium se basa en el estándar WebDriver (ten en cuenta el BiDi faltante), pero tuvo compatibilidad experimental con WebDriver BiDi durante un tiempo. A partir de hoy, puedes usar Comandos WebDriver BiDi en producción en Selenium Grid alojado en BrowserStack.

Por último, habilita funciones como la intercepción de solicitudes, la emulación avanzada y eventos del navegador en tiempo real, y no solo en Chrome, sino en todas navegador compatible con WebDriver BiDi.

En el siguiente ejemplo, se muestra cómo escuchar eventos de registro con WebDriver BiDi en BrowserStack. Los registros atrapados también están disponibles para su inspección automate.browserstack.com:

const webdriver = require('selenium-webdriver');

// Insert credentials from https://www.browserstack.com/accounts/profile/details
const USERNAME = '<YOUR_USERNAME>';
const ACCESS_KEY = '<YOUR_ACCESS_KEY>';

(async () => {
  const driver = await (new webdriver.Builder()
    .withCapabilities({
      browserName: 'chrome',
      'bstack:options': {
        seleniumVersion: '4.22.0',
        seleniumBidi: true, // Enable WebDriver BiDi.
      },
    })
    .usingServer(
      `https://${USERNAME}:${ACCESS_KEY}@hub-cloud.browserstack.com/wd/hub`
    )
    .build());

  // Add a listener for log events.
  await driver.script().addConsoleMessageHandler((logEntry) => {
    console.log(logEntry.text);
  });

  await driver.get(
    'https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html'
  );

  // Trigger a console log on the demo page.
  await driver.findElement({ id: 'consoleLog' }).click();
  await driver.quit();

  // Inspect logs on automate.browserstack.com!
})();

BrowserStack es solo el comienzo

El equipo de Automatización del navegador Chrome felicita al equipo de BrowserStack por lanzamiento de la asistencia para WebDriver BiDi hoy mismo. También esperamos vimos que la compatibilidad con WebDriver BiDi se expande a través de BrowserStack, otras herramientas. como Selenium, además de otros navegadores importantes en las próximas semanas.

Y si este anuncio te hizo entusiasmar con la prueba, pero aún no comenzaste de tu recorrido de prueba, asegúrate de consultar el curso Learn Testing en web.dev.