1. Au niveau racine de votre dossier de test, installez le package @axe-core/watcher et toutes ses dépendances à l'aide de npm ou de votre gestionnaire de packages préféré (par exemple, Yarn ou pnpm).

    npm install --save-dev @axe-core/watcher
  2. Dans votre wdio.config.ts fichier , importez la fonction wdioTestRunner , la fonction wrapWdio et la classe WdioController à partir de ** @axe-core/watcher** :

    import {
      wdioTestRunner,
      wrapWdio,
      WdioController
    } from '@axe-core/watcher'
  3. Avant d'exporter votre configuration WebdriverIO, encapsulez-la avec un appel à wdioTestRunner() tout en fournissant votre clé 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. Dans votre code de configuration de test (généralement dans un bloc before ou beforeAll ), créez une instance de WdioController, puis encapsulez votre objet browser  :

    const controller = new WdioController(browser)
    wrapWdio(browser, controller)
  5. Enfin, assurez-vous que tous les résultats des tests d’axe Watcher sont complètement traités. Pour ce faire, ajoutez le bloc de code suivant à votre code de démontage de test (généralement dans un bloc afterFetch ) :

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