Axe Watcher nécessite un navigateur pris en charge déjà installé sur votre système : Chrome pour Testing (une installation de navigateur distincte de Google Chrome), Chromium ou Microsoft Edge. Google Chrome, version 139 ou ultérieure, n'est pas pris en charge. Consultez Configuration et installation des navigateurs pour une utilisation avec Axe Watcher pour les instructions d'installation et de configuration.
Au niveau racine de votre dossier de test, installez le package @axe-core/watcher et toutes ses dépendances en utilisant npm ou votre gestionnaire de packages préféré (par exemple, yarn ou pnpm).
npm install --save-dev @axe-core/watcherDans votre fichier wdio.config.ts, importez la fonction wdioTestRunner(), la fonction wrapWdio() et la classe WdioController de @axe-core/watcher/wdio :
import {
wdioTestRunner,
wrapWdio,
WdioController
} from '@axe-core/watcher/wdio'Avant d'exporter votre configuration WebdriverIO, enveloppez-la avec un appel à wdioTestRunner() tout en fournissant votre clé API :
// Original code:
export const 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
export const config = wdioTestRunner({
axe: {
apiKey: ACCESSIBILITY_API_KEY,
projectId: PROJECT_ID,
serverURL: SERVER_URL
}, {
// Your config options here...
}
})Assurez-vous de définir ACCESSIBILITY_API_KEY et PROJECT_ID dans votre environnement sur votre clé API personnelle (disponible dans votre compte Axe, onglet **CLÉS API**) et votre ID de projet (indiqué en haut de ces instructions lorsque vous avez créé votre projet ou disponible à partir de la page Projets en choisissant **Configurer le projet** sous **Paramètres**). Si votre organisation utilise une instance Axe Developer Hub régionale, cloud privé ou sur site, définissez également SERVER_URL sur l'URL de base de cette instance (par exemple, https://axe-eu.deque.com) ; sinon, omettez SERVER_URL et la valeur par défaut https://axe.deque.com sera utilisée.
Dans votre code de configuration de test (généralement dans un bloc before ou beforeAll), créez une instance de la classe WdioController, puis enveloppez votre objet browser :
const controller = new WdioController(browser)
wrapWdio(browser, controller)Enfin, assurez-vous que tous les résultats de test de Axe Watcher sont évacués. Pour ce faire, ajoutez le bloc de code suivant à votre code de démantèlement des tests (généralement dans un bloc afterFetch) :
afterEach(async () => {
await controller.flush()
})