Installeer op het hoofdniveau van je testmap het @axe-core/watcher pakket en al zijn afhankelijkheden met behulp van npm of je voorkeurspakketmanager (bijvoorbeeld, yarn of pnpm).
npm install --save-dev @axe-core/watcherImporteer in uw testbestand of -bestanden de puppeteerConfig() functie, de wrapPuppeteer() functie en de PuppeteerController klasse van @axe-core/watcher/puppeteer:
const {
puppeteerConfig,
wrapPuppeteerPage,
PuppeteerController
} = require('@axe-core/watcher/puppeteer')Werk uw testopstellingscode bij (gewoonlijk in een before of beforeAll blok), omhul alle bestaande code voor het maken van een browser instantie met een aanroep naar puppeteerConfig(), met uw API-sleutel:
const browser = await puppeteer.launch({
// Your existing launch options...
})
// Becomes:
const ACCESSIBILITY_API_KEY = process.env.ACCESSIBILITY_API_KEY
const PROJECT_ID = process.env.PROJECT_ID
const browser = await puppeteer.launch(
puppeteerConfig({
axe: {
apiKey: ACCESSIBILITY_API_KEY,
projectId: PROJECT_ID
},
// Your existing launch options...
})
)Zorg ervoor dat u ACCESSIBILITY_API_KEY en PROJECT_ID in uw omgeving instelt op uw persoonlijke API-sleutel (te vinden in uw axe-account, **API-SLEUTELS** tab) en uw project-ID (weergegeven bovenaan deze instructies toen u uw project aanmaakte of beschikbaar op de projectpagina door te kiezen voor **Project configureren** onder **Instellingen**).
Maak een instantie van PuppeteerController en omhul uw Puppeteer browserContext:
// Create a page instance, using your browser instance.
let page = await browser.newPage()
// Initialize the PuppeteerController by passing in the Puppeteer page.
const controller = new PuppeteerController(page)
// Use the new wrapped Puppeteer page instance.
page = wrapPuppeteerPage(page, controller)Zorg er tenslotte voor dat alle testresultaten van axe Watcher worden vrijgegeven. Voeg hiervoor het volgende codeblok toe aan uw testafbreekcode (gewoonlijk in een afterEach blok):
afterEach(async () => {
await controller.flush()
})