Instrucciones para Puppeteer y 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

Configurando tus pruebas con Puppeteer y TypeScript

Not for use with personal data
  1. En el nivel raíz de tu carpeta de pruebas, instala el paquete @axe-core/watcher y todas sus dependencias usando npm o tu gestor de paquetes preferido (por ejemplo, yarn o pnpm).

    npm install --save-dev @axe-core/watcher
  2. En tu archivo o archivos de prueba, importa la función puppeteerConfig(), la función wrapPuppeteer() y la clase PuppeteerController de @axe-core/watcher/puppeteer:

    import {
      puppeteerConfig,
      wrapPuppeteerPage,
      PuppeteerController
    } from '@axe-core/watcher/puppeteer'
  3. Actualiza tu código de configuración de pruebas (típicamente en un bloque before o beforeAll) envolviendo cualquier código existente para crear una instancia de browser con una llamada a puppeteerConfig(), mientras obtienes tu clave API del entorno (como 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
      })
    );

    Asegúrese de configurar ACCESSIBILITY_API_KEY y PROJECT_ID en su entorno con su clave API personal (que se encuentra en su cuenta de axe, pestaña API KEYS) y su ID de proyecto (mostrado en la parte superior de estas instrucciones cuando creó su proyecto o disponible en la página de Proyectos eligiendo Configurar proyecto bajo Configuración). Si su organización utiliza una instancia regional, nube privada o local de Axe Developer Hub, configure también SERVER_URL con la URL base de esa instancia (por ejemplo, https://axe-eu.deque.com); de lo contrario, omita SERVER_URL y se usará el https://axe.deque.com predeterminado.

  4. Crea una instancia de PuppeteerController y envuelve tu 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)
  5. Finalmente, asegura que todos los resultados de las pruebas de axe Watcher se vacíen. Para hacerlo, agrega el siguiente bloque de código a tu código de desmantelamiento de pruebas (típicamente en un bloque afterEach):

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