Anleitungen für Puppeteer und TypeScript

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Konfigurieren Ihrer Tests mit Puppeteer und TypeScript

Not for use with personal data
  1. Im Stammverzeichnis Ihres Testordners installieren Sie das Paket @axe-core/watcher und alle seine Abhängigkeiten mit npm oder Ihrem bevorzugten Paketmanager (zum Beispiel yarn oder pnpm).

    npm install --save-dev @axe-core/watcher
  2. Importieren Sie in Ihrer Testdatei oder in Ihren Testdateien die puppeteerConfig()-Funktion, die wrapPuppeteer()-Funktion und die PuppeteerController-Klasse aus @axe-core/watcher/puppeteer:

    import {
      puppeteerConfig,
      wrapPuppeteerPage,
      PuppeteerController
    } from '@axe-core/watcher/puppeteer'
  3. Aktualisieren Sie Ihren Test-Setup-Code (typischerweise in einem before- oder beforeAll-Block), indem Sie vorhandenen Code zur Erstellung einer browser-Instanz mit einem Aufruf von puppeteerConfig() umschließen und dabei Ihren API-Schlüssel aus der Umgebung beziehen (als ACCESSIBILITY_API_KEY):

    // Original code:
    
    browser = await puppeteer.launch({
      // Your existing launch options...
    })
    
    // Becomes:
    
    const ACCESSIBILITY_API_KEY = process.env.ACCESSIBILITY_API_KEY
    const PROJECT_ID = process.env.PROJECT_ID
    const SERVER_URL = process.env.SERVER_URL
    
    const browser = await puppeteer.launch(
      puppeteerConfig({
        axe: {
          apiKey: ACCESSIBILITY_API_KEY,
          projectId: PROJECT_ID,
          serverURL: SERVER_URL
        },
        headless: false
      })
    );

    Stellen Sie sicher, dass Sie ACCESSIBILITY_API_KEY und PROJECT_ID in Ihrer Umgebung auf Ihren persönlichen API-Schlüssel (zu finden in Ihrem Axe-Konto, **API-SCHLÜSSEL**-Tab) und Ihre Projekt-ID (angezeigt oben in diesen Anweisungen, als Sie Ihr Projekt erstellt haben, oder verfügbar auf der Seite "Projekte" durch Auswahl von **Projekt konfigurieren** unter **Einstellungen**) setzen. Wenn Ihre Organisation eine regionale, private Cloud oder eine lokale Axe Developer Hub-Instanz verwendet, setzen Sie auch SERVER_URL auf die Basis-URL dieser Instanz (zum Beispiel https://axe-eu.deque.com); andernfalls lassen Sie SERVER_URL weg und der Standard https://axe.deque.com wird verwendet.

  4. Erstellen Sie eine Instanz von PuppeteerController und umschließen Sie Ihr Puppeteer-browserContext:

    // Create a page instance, using your browser instance.
    let page = await browser.newPage()
    
    // Initialize the PuppeteerController by passing in the Puppeteer page.
    const controller = new PuppeteerController(page)
    
    // Use the new wrapped Puppeteer page instance.
    page = wrapPuppeteerPage(page, controller)
  5. Stellen Sie abschließend sicher, dass alle Testergebnisse von axe Watcher ausgegeben werden. Fügen Sie dazu den folgenden Codeblock in Ihren Testabbau-Code ein (typischerweise in einem afterEach-Block):

    afterEach(async () => {
      await controller.flush()
    });