Cypress
Traducido automáticamente del inglés.
Leer en inglésUna prueba de Cypress que se registra con una dirección nueva y abre el enlace de verificación del correo, usando el paquete proxymail-qa en tareas de Cypress.
Instala el paquete
Sección titulada «Instala el paquete»Añade proxymail-qa al proyecto.
npm install --save-dev proxymail-qapnpm add -D proxymail-qayarn add -D proxymail-qabun add -d proxymail-qaRegistra las tareas
Sección titulada «Registra las tareas»Cypress ejecuta las tareas en Node, así que regístralas en la configuración. La clave de API se toma de
PROXYMAIL_QA_API_KEYen el entorno donde se ejecuta Cypress.cypress.config.ts import { defineConfig } from 'cypress';import { ProxyMailQA } from 'proxymail-qa';export default defineConfig({e2e: {setupNodeEvents(on) {const qa = new ProxyMailQA(); // reads PROXYMAIL_QA_API_KEYon('task', {createAddress: () => qa.createAddress({ persona: true }),waitForLink: ({ address, since }: { address: string; since: string }) => qa.waitForLink(address, { type: 'verify', since }),deleteAddress: (address: string) => qa.deleteAddress(address).then(() => null),});},},});Regístrate y abre el enlace
Sección titulada «Regístrate y abre el enlace»Regístrate con la dirección y luego abre el enlace del correo.
El tiempo de espera de la tarea es de 35 segundos porque una espera puede durar hasta 30. Para un código en lugar de un enlace, añade una tarea que llame a
qa.waitForCode(address, { since })y escribe suvalueen el formulario.cypress/e2e/signup.cy.js it('verifies the email', () => {cy.task('createAddress').then(({ address }) => {const since = new Date().toISOString();cy.visit('/signup');cy.get('[name=email]').type(address);cy.contains('Sign up').click();cy.task('waitForLink', { address, since }, { timeout: 35000 }).then(({ value }) => cy.visit(value));cy.task('deleteAddress', address);});});
Si no llega nada, el error indica el motivo hasta donde Proxy Mail QA puede saberlo, por ejemplo, que el proveedor de correo de tu app solo envía a direcciones verificadas. Para ejecutar en CI, consulta Ejecutar en CI. ¿Prefieres HTTP simple desde el spec con cy.request? Todas las llamadas están en la guía de REST API.
¿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.