Instructions pour Puppeteer et TypeScript

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Configurer vos tests avec Puppeteer et TypeScript

Not for use with personal data
  1. 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/watcher
  2. Dans votre ou vos fichiers de test, importez la fonction puppeteerConfig(), la fonction wrapPuppeteer() et la classe PuppeteerController de @axe-core/watcher/puppeteer :

    import {
      puppeteerConfig,
      wrapPuppeteerPage,
      PuppeteerController
    } from '@axe-core/watcher/puppeteer'
  3. Mettez à jour votre code de configuration de test (généralement dans un bloc before ou beforeAll) en enveloppant tout code existant pour créer une instance browser avec un appel à puppeteerConfig(), tout en obtenant votre clé API de l'environnement (comme ACCESSIBILITY_API_KEY) :

    // Original code:
    
    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 SERVER_URL = process.env.SERVER_URL
    
    const browser = await puppeteer.launch(
      puppeteerConfig({
        axe: {
          apiKey: ACCESSIBILITY_API_KEY,
          projectId: PROJECT_ID,
          serverURL: SERVER_URL
        },
        headless: false
      })
    );

    Assurez-vous de définir ACCESSIBILITY_API_KEY et PROJECT_ID dans votre environnement avec votre clé API personnelle (trouvée 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 sur la page Projets en choisissant **Configurer le projet** sous **Paramètres**). Si votre organisation utilise une instance Axe Developer Hub régionale, privée, 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.

  4. Créez une instance de PuppeteerController et enveloppez votre browserContext Puppeteer :

    // 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)
  5. Enfin, assurez-vous que tous les résultats de test de axe Watcher sont purgés. Pour ce faire, ajoutez le bloc de code suivant à votre code de démontage de test (généralement dans un bloc afterEach) :

    afterEach(async () => {
      await controller.flush()
    });