Ir al contenido

Un script de Puppeteer que se registra con una dirección nueva e introduce el código del correo, usando el cliente de Node.js.

  1. Instala el cliente de Node.js junto a Puppeteer y define la clave de API como PROXYMAIL_QA_API_KEY.

    npm install --save-dev puppeteer proxymail-qa
  2. Crea una dirección, regístrate con ella, espera el código e introdúcelo.

    Para un enlace en lugar de un código, const { value: link } = await qa.waitForLink(address, { type: 'verify', since: submitted }) y await page.goto(link).

    signup.mjs
    import puppeteer from 'puppeteer';
    import { ProxyMailQA } from 'proxymail-qa';
    const qa = new ProxyMailQA(); // reads PROXYMAIL_QA_API_KEY
    const browser = await puppeteer.launch();
    const page = await browser.newPage();
    const { address, password } = await qa.createAddress({ persona: true, password: true });
    await page.goto('https://staging.example.com/signup');
    await page.type('input[name=email]', address);
    await page.type('input[name=password]', password);
    const submitted = new Date();
    await Promise.all([page.waitForNavigation(), page.click('button[type=submit]')]);
    const { value: code } = await qa.waitForCode(address, { since: submitted });
    await page.type('input[name=code]', code);
    await Promise.all([page.waitForNavigation(), page.click('button[type=submit]')]);
    await qa.deleteAddress(address);
    await browser.close();

Si no llega nada, el error dice por qué, hasta donde Proxy Mail QA puede saberlo, por ejemplo que el proveedor de correo de tu app solo envía a direcciones verificadas.

Las mismas llamadas funcionan con Jest o Vitest alrededor; consulta Ejecución en CI para claves y ejecuciones en paralelo.

¿Tienes una pregunta sobre esta página?

Pregunta en cualquier idioma. La documentación puede responderte de inmediato, o puedes enviar tu pregunta al equipo de Proxy Mail QA, que responde en inglés.