1. Installeer in de hoofdmap van je testmap het @axe-core/watcher-pakket en al zijn afhankelijkheden met npm of je voorkeurspakketbeheerder (bijvoorbeeld yarn of pnpm).

    npm install --save-dev @axe-core/watcher
  2. Importeer in uw wdio.config.js-bestand de wdioTestRunner()-functie, de wrapWdio()-functie en de WdioController-klasse van @axe-core/watcher/wdio:

    const {
      wdioTestRunner,
      wrapWdio,
      WdioController
    } = require('@axe-core/watcher/wdio')
  3. Voordat u uw WebdriverIO-configuratie exporteert, omwikkel het met een oproep naar wdioTestRunner() terwijl u uw API-sleutel verstrekt:

    exports.config = {
      // Your config options here...
    }
    
    // Becomes:
    
    const ACCESSIBILITY_API_KEY = process.env.ACCESSIBILITY_API_KEY
    const PROJECT_ID = process.env.PROJECT_ID
    const SERVER_URL = process.env.SERVER_URL
    
    exports.config = wdioTestRunner({
      axe: {
        apiKey: ACCESSIBILITY_API_KEY,
        projectId: PROJECT_ID,
        serverURL: SERVER_URL
      }, {
        // Your config options here...
      }
    })

    Zorg ervoor dat u ACCESSIBILITY_API_KEY en PROJECT_ID in uw omgeving instelt op uw persoonlijke API-sleutel (te vinden in uw axe-account, **API-SLEUTELS** tabblad) en uw project-ID (aangegeven bovenaan deze instructies toen u uw project maakte of beschikbaar op de projectenpagina door **Project configureren** te kiezen onder **Instellingen**). Als uw organisatie een regionale, private cloud of on-premises Axe Developer Hub-instance gebruikt, stel dan ook SERVER_URL in op de basis-URL van die instance (bijvoorbeeld https://axe-eu.deque.com); anders laat u SERVER_URL weg en wordt de standaard https://axe.deque.com gebruikt.

  4. Maak in uw testopstartcode (meestal in een before- of beforeAll-blok) een instantie van de WdioController en wikkel vervolgens uw browser-object om:

    const controller = new WdioController(browser)
    wrapWdio(browser, controller)
  5. Zorg er ten slotte voor dat alle testresultaten van axe Watcher worden afgevloeid. Voeg hiertoe het volgende codeblok toe aan uw testafsluitcode (meestal in een afterFetch-blok):

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