1. Nella radice della cartella di test, installa il pacchetto @axe-core/watcher e tutte le sue dipendenze utilizzando npm o il tuo gestore di pacchetti preferito (ad esempio, Yarn o pnpm).

    npm install --save-dev @axe-core/watcher
  2. Nel file o nei file di test, importa la funzione webdriverConfig(), la funzione wrapWebdriver() e la classe WebdriverController da @axe-core/watcher:

    const {
      webdriverConfig,
      wrapWebdriver,
      WebdriverController
    } = require('@axe-core/watcher')
  3. Aggiorna il codice di configurazione del test (in genere in un blocco before o beforeAll ), specificando le opzioni di Chrome quando crei un'istanza del tuo browser , fornendo la tua chiave API:

    // Original code:
    let browser = await new Builder()
      .forBrowser('chrome')
      .build()
    
    // Becomes:
    const API_KEY = process.env.API_KEY
    
    let browser = await new Builder()
      .forBrowser('chrome')
      .setChromeOptions(
        webdriverConfig({
          axe: {
            apiKey: API_KEY
          }
        }
      )
      .build()
  4. Crea un'istanza di WebdriverController:

    const controller = new WebdriverController(browser)
  5. Scrivi la tua istanza del browser con la funzione wrapWebdriver() ****:

    browser = wrapWebdriver(browser, controller)
  6. Infine, assicurarsi che tutti i risultati dei test di axe Watcher siano stati completamente elaborati. Per fare ciò, aggiungi il seguente blocco di codice al tuo codice di smantellamento del test (in genere in un blocco afterEach ):

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