Istruzioni per il testing dei componenti con Cypress e TypeScript
Configurazione dei tuoi test di componenti con Cypress e TypeScript
-
Nella cartella principale del tuo ambiente di test, installa il pacchetto
@axe-core/watchere tutte le sue dipendenze utilizzandonpmo il tuo gestore di pacchetti preferito (ad esempio,yarnopnpm).npm install --save-dev @axe-core/watcher -
In
cypress.config.ts, importa la funzionecypressConfig()dal pacchetto@axe-core/watchere avvolgi il tuo config con essa. Imposta l'arraytestingTypesper includerecomponent:import { defineConfig } from 'cypress'; import { cypressConfig } from '@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 export default 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', //}, }, }) );Assicurati di impostare
ACCESSIBILITY_API_KEYePROJECT_IDnel tuo ambiente con la tua chiave API personale (che si trova nel tuo account Axe, scheda **API KEYS**) e l'ID del tuo progetto (mostrato nella parte superiore di queste istruzioni quando hai creato il tuo progetto o disponibile nella pagina Progetti scegliendo **Configura progetto** sotto **Impostazioni**). Se la tua organizzazione utilizza un'istanza regionale, cloud privato o on-premise di Axe Developer Hub, imposta ancheSERVER_URLsull'URL di base di tale istanza (per esempio,https://axe-eu.deque.com); altrimenti, omettiSERVER_URLe verrà utilizzato ilhttps://axe.deque.compredefinito. -
Nel tuo file di supporto componenti di Cypress (comunemente chiamato cypress/support/component.ts), importa
@axe-core/watcher/cypress/supporte chiamaaxeWatcherFlush()dopo ogni test:import '@axe-core/watcher/cypress/support'; afterEach(() => { cy.axeWatcherFlush(); }); -
Hai finito. Esegui i tuoi test sui componenti e controlla i risultati. Si prega di notare che
@axe-core/watcherfunziona solo in Chrome for Testing o Chromium e dovrebbe essere utilizzato solo in modalità di esecuzione di Cypress. Può essere utilizzato con--headless=newo--headed(ad esempio,cypress run --headed --browser=chrome-for-testing --component).
