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 (trovata nel tuo account axe, nella scheda **API KEYS**) e con il tuo ID progetto (mostrato in cima a queste istruzioni quando hai creato il tuo progetto o disponibile nella pagina Progetti selezionando **Configura progetto** sotto **Impostazioni**). Se la tua organizzazione utilizza una versione regionale, cloud privata o un'istanza Axe Developer Hub on-premises, imposta ancheSERVER_URLall'URL base di quella istanza (ad esempio,https://axe-eu.deque.com); altrimenti, omettiSERVER_URLe verrà utilizzato il valore predefinitohttps://axe.deque.com. -
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).
