Instructions pour le test de composants avec Cypress et JavaScript
Configurer vos tests de composants avec Cypress et JavaScript
Axe Watcher nécessite un navigateur compatible : Chrome for Testing (une installation de navigateur distincte, différente de Google Chrome), Chromium ou Microsoft Edge. Le navigateur Electron intégré de Cypress n'est pas compatible, donc lancez Cypress avec cypress run --browser chrome-for-testing --headless (ou chromium / edge). Consultez Configuration et Paramétrage des Navigateurs pour Utiliser Axe Watcher pour les instructions d'installation.
-
Au niveau racine de votre dossier de test, installez le package
@axe-core/watcheret toutes ses dépendances en utilisantnpmou votre gestionnaire de packages préféré (par exemple,yarnoupnpm).npm install --save-dev @axe-core/watcher -
Dans
cypress.config.js, importez la fonctioncypressConfig()du paquet@axe-core/watcheret enveloppez votre configuration avec elle. Définissez le tableautestingTypespour inclurecomponent:const { defineConfig } = require('cypress'); const { cypressConfig } = require('@axe-core/watcher/cypress/config'); const ACCESSIBILITY_API_KEY = process.env.ACCESSIBILITY_API_KEY const PROJECT_ID = process.env.PROJECT_ID const SERVER_URL = process.env.SERVER_URL module.exports = defineConfig( cypressConfig({ axe: { apiKey: ACCESSIBILITY_API_KEY, projectId: PROJECT_ID, serverURL: SERVER_URL, testingTypes: ['component'] }, // Your existing Cypress configuration code here component: { // Your component testing configuration // For example: // devServer: { // framework: 'react', // bundler: 'webpack', //}, }, }) );Assurez-vous de définir
ACCESSIBILITY_API_KEYetPROJECT_IDdans 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 égalementSERVER_URLsur l'URL de base de cette instance (par exemple,https://axe-eu.deque.com) ; sinon, omettezSERVER_URLet la valeur par défauthttps://axe.deque.comsera utilisée. -
Dans votre fichier de support de composants Cypress (communément appelé
cypress/support/component.js), importez le paquet@axe-core/watchercypressCommandset appelezaxeWatcherFlush()après chaque test :require('@axe-core/watcher/cypress/support'); afterEach(() => { cy.axeWatcherFlush(); }); -
Vous avez terminé. Exécutez vos tests de composants et vérifiez vos résultats. Veuillez noter que
@axe-core/watcherfonctionne uniquement dans Chrome pour le Test ou Chromium et devrait être utilisé uniquement en mode d'exécution Cypress. Il peut être utilisé avec--headless=newou--headed(par exemple,cypress run --headed --browser=chrome-for-testing --component).
