npm i -D cypress-image-snapshot --legacy-peer-deps
const {
addMatchImageSnapshotPlugin,
} = require(“cypress-image-snapshot/plugin”);
addMatchImageSnapshotPlugin(on, config);
Introducción al curso
Presentación del curso
Instalación de recursos
Cookies y Localstorage
Cookies
Local Storage
Emulando dispositivos
Emulando dispositivos
Instalando plugins
Usando xpaths
Flaky tests
¿Qué son los Flaky Tests?
Interceptando Network Requests
Interceptando request
Buenas prácticas
Patrones de diseño: Page Object Model
Custom commands
Variables de entorno
Cypress.env
Visual testing
Visual testing
Seguridad
Seguridad en Cypress
Navegación entre pestañas del mismo sitio
Navegar entre diferentes dominios en diferentes tests
Navegar entre diferentes dominios en diferentes tests y compartir información entre ambas páginas
Data Driven Test
Cypress fixtures
BDD
Configuración de plugins y steps dinámicos
Shared Step Definitions
Data Driven Test por medio de Scenarios Outline
Reportes
Múltiples reportes
Allure report
Docker
Cypress con docker container
Dashboard
Usando dashboard de Cypress
Alternativas gratuitas al Dashboard de Cypress
CI/CD
Jenkins
Final
Cypress Scenario recorder plugin
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Las pruebas visuales son un componente crucial en el desarrollo de interfaces de usuario. Detectar cambios sutiles, como modificaciones en texto, márgenes o tamaños, puede ser complicado manualmente. Por ello, el automatizar esta tarea con herramientas como Cypress maximiza la eficiencia y la precisión. Aunque Cypress no posee una función nativa para realizar visual testing, el uso de plugins expande sus capacidades. A continuación, te explicaré cómo instalar un plugin para pruebas visuales en Cypress y configurarlo adecuadamente.
Para comenzar con visual testing en Cypress, es esencial instalar un plugin especializado. Te guiaré a través del proceso de instalación y configuración del mismo.
Instalación del plugin:
npm install --save-dev cypress-image-snapshot
--legacy-peer-deps
.Configuración en Cypress:
addMatchImageSnapshotPlugin
desde cypress-image-snapshot/plugin
.const { addMatchImageSnapshotPlugin } = require('cypress-image-snapshot/plugin');
module.exports = (on, config) => {
addMatchImageSnapshotPlugin(on, config);
};
failureThreshold
y failureThresholdType
.import { addMatchImageSnapshotCommand } from 'cypress-image-snapshot/command';
addMatchImageSnapshotCommand({
failureThreshold: 0.03, // tolerancia del 0.3%
failureThresholdType: 'percent', // puede ser 'pixel' o 'percent'
capture: 'viewport', // 'viewport' o 'fullPage'
});
La creación de pruebas visuales implica capturar snapshots y compararlos para identificar diferencias visuales.
Escribir una prueba de regresión visual:
describe('Prueba de Regresión Visual', () => {
it('Mi primera prueba visual', () => {
cy.visit('TU_URL');
cy.matchImageSnapshot();
});
});
Estrategias para snapshots fallidos:
package.json
."scripts": {
"updateSnapshot": "cypress open --env updateSnapshots=true"
}
En ocasiones, quizás necesites realizar pruebas visuales sobre elementos individuales en lugar de capturar toda la página.
Capturar un solo elemento:
cy.get('selector_de_elemento').matchImageSnapshot('ElementoEspecífico');
Consejos para optimizar tus pruebas:
La implementación de visual testing con Cypress es una herramienta poderosa para asegurar la calidad y la integridad visual de tus aplicaciones. Te invito a seguir explorando y experimentando con estas herramientas para optimizar tu flujo de trabajo y mejorar la confiabilidad de tus desarrollos.
Aportes 2
Preguntas 0
npm i -D cypress-image-snapshot --legacy-peer-deps
const {
addMatchImageSnapshotPlugin,
} = require(“cypress-image-snapshot/plugin”);
addMatchImageSnapshotPlugin(on, config);
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?