1. En el nivel raíz de su carpeta de pruebas, instale el paquete @axe-core/watcher y todas sus dependencias usando npm o su administrador de paquetes preferido (por ejemplo, Yarn o pnpm).

    npm install --save-dev @axe-core/watcher
  2. En su archivo wdio.config.ts , importe la función wdioTestRunner , la función wrapWdio y la clase WdioController desde @axe-core/watcher:

    import {
      wdioTestRunner,
      wrapWdio,
      WdioController
    } from '@axe-core/watcher'
  3. Antes de exportar su configuración de WebdriverIO, envuélvala con una llamada a wdioTestRunner() mientras proporciona su clave API:

    // Original code:
    
    export const config = {
      // Your config options here...
    }
    
    // Becomes:
    
    const API_KEY = process.env.API_KEY
    
    export const config = wdioTestRunner({
      axe: {
        apiKey: API_KEY
      }, {
        // Your config options here...
      }
    })
  4. En el código de configuración de prueba (normalmente en un before o beforeAll bloque), cree una instancia de WdioController, y, a continuación, envuelva su browser objeto:

    const controller = new WdioController(browser)
    wrapWdio(browser, controller)
  5. Por último, asegúrese de que se hayan eliminado todos los resultados de las pruebas de Axe Watcher. Para ello, agregue el siguiente bloque de código a su código de desmontaje de prueba (normalmente en un afterFetch bloque):

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