Automatisierung mit WebDriver BiDi jetzt auf BrowserStack verfügbar

Matthias Rohmer
Matthias Rohmer

In den letzten drei Jahren hat sich das Browser-Automatisierungsteam von Chrome mit anderen großen Browser- und Toolanbietern wie BrowserStack zusammenarbeiten, Erstellen Sie WebDriver BiDi, ein neues Browser-Automatisierungsprotokoll. was bidirektionale Automatisierungs-Workflows browserübergreifend ermöglicht. Diese Workflows waren zuvor nur mit den proprietären Chrome-Entwicklertools möglich. Protokoll in Chromium-basierten Browsern.

Als WebDriver BiDi markiert heute ein wichtiger Meilenstein dieser gemeinsamen Arbeit. endlich produktionsreif für Entwickler, angefangen mit BrowserStack heute.

Selenium und BrowserStack

Seit Kurzem ist BrowserStack offizieller Entwicklungspartner von Selenium. ein ausgereiftes Open-Source-Framework zur Browserautomatisierung, das auch WebDriver BiDi. Diese Partnerschaft ist ein Beleg dafür, dass BrowserStack in eine erfolgreiche Testumgebung investiert, wobei BrowserStack für die Entwicklung von Selenium.

Teil des Selenium-Projekts ist Selenium Grid, mit denen Sie Tests gleichzeitig auf mehreren Geräten durchführen können. Aber das Festlegen eines Rasters Dutzende verschiedener Geräte anschaffen und warten, sie verfügbar zu halten, kann für manche schwierig oder sogar unmöglich sein.

Gehostete Selenium Grid-Lösungen wie BrowserStack erleichtern Ihnen die Ausführung Tests auf vielen verschiedenen Plattformen und Geräten durchführen, ohne diese auf Ihrem gehören.

WebDriver BiDi auf Seleniumraster

Selenium basiert auf dem WebDriver-Standard (beachten Sie das fehlende BiDi) experimentelle Unterstützung für WebDriver BiDi. Ab heute können Sie In Produktion befindliche WebDriver-BiDi-Befehle im gehosteten Selenium Grid des BrowserStacks

Dadurch werden Funktionen wie das Abfangen von Anfragen, erweiterte Emulation und die Verarbeitung von Browserereignissen in Echtzeit – und nicht nur in Chrome, sondern auch Browser, der WebDriver BiDi unterstützt.

Das folgende Beispiel zeigt, wie mithilfe von WebDriver BiDi Protokollereignisse überwacht werden. auf BrowserStack. Die erfassten Logs können dann auch 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 ist erst der Anfang

Das Chrome Browser Automation-Team gratuliert dem Team von BrowserStack zum haben heute ihre WebDriver BiDi-Unterstützung eingeführt. Wir freuen uns auch auf die Unterstützung für WebDriver BiDi auf BrowserStack ausdehnt, wie Selenium und andere bekannte Browser.

Und wenn Sie sich durch diese Ankündigung auf das Testen freuen, aber noch nicht damit begonnen haben, weitere Informationen dazu, wie Sie Tests durchführen, finden Sie in unserem Kurs zum Testen von Tests auf web.dev.