Las pruebas end-to-end o (E2E) son una forma de pruebas usadas para afirmar que tu aplicación completa funciona como se espera de principio a fin o "end-to-end". Las pruebas E2E difieren de las pruebas unitarias en que están completamente desacopladas de los detalles de implementación subyacentes de tu código. Típicamente se usan para validar una aplicación de una manera que imita la forma en que un usuario interactuaría con ella. Esta página sirve como guía para comenzar con las pruebas end-to-end en Angular usando el Angular CLI.
Configurar pruebas E2E
El Angular CLI descarga e instala todo lo que necesitas para ejecutar pruebas end-to-end para tu aplicación Angular.
ng e2e
El comando ng e2e primero verificará tu proyecto por el objetivo "e2e". Si no puede localizarlo, el CLI te preguntará qué paquete e2e te gustaría usar y te guiará a través de la configuración.
Cannot find "e2e" target for the specified project.You can add a package that implements these capabilities.For example:Cypress: ng add @cypress/schematicNightwatch: ng add @nightwatch/schematicsWebdriverIO: ng add @wdio/schematicsPlaywright: ng add playwright-ng-schematicsPuppeteer: ng add @puppeteer/ng-schematicsWould you like to add a package with "e2e" capabilities now?No❯ CypressNightwatchWebdriverIOPlaywrightPuppeteer
Si no encuentras el ejecutor de pruebas que te gustaría usar de la lista anterior, puedes agregar manualmente un paquete usando ng add.
Ejecutar pruebas E2E
Ahora que tu aplicación está configurada para pruebas end-to-end, podemos ejecutar el mismo comando para ejecutar tus pruebas.
ng e2e
Nota, no hay nada "especial" sobre ejecutar tus pruebas con cualquiera de los paquetes e2e integrados. El comando ng e2e realmente solo está ejecutando el builder e2e bajo el capó. Siempre puedes crear tu propio builder personalizado llamado e2e y ejecutarlo usando ng e2e.
Más información sobre herramientas de pruebas end-to-end
| Herramienta de Pruebas | Detalles |
|---|---|
| Cypress | Comenzando con Cypress |
| Nightwatch | Comenzando con Nightwatch |
| WebdriverIO | Comenzando con Webdriver.io |
| Playwright | Comenzando con Playwright |
| Puppeteer | Comenzando con Puppeteer |