Struttura del corso
Giorno 1 – Introduzione e nozioni di base
Introduzione
- Il ruolo di Cypress nella piramide dei test
- Configurazione dell’ambiente per l’automazione dei test (Node LTS, npm)
- Creazione di un progetto Cypress minimo
- Il primo test E2E di verifica in modalità GUI e headless
Concetti fondamentali
- Concetti base di Cypress: coda dei comandi, tentativi automatici di ripetizione
- Utilizzo degli hook: before, beforeEach, afterEach, after
- Alias e riutilizzabilità dei comandi (.as(), cy.get('@alias'))
Test delle API (Contratto)
- Test diretti delle API con Cypress (cy.request())
- Creazione di stub per le API mediante cy.intercept() in casi particolari
- Garanzia della corretta integrazione tra frontend e backend
Comandi personalizzati di Cypress
- Creazione di comandi specifici per operazioni ricorrenti (accesso, navigazione)
- Miglioramento della leggibilità e manutenibilità del codice grazie a chiamate riutilizzabili (es. cy.login())
Programma: teoria + dimostrazioni + esercizi pratici Prerequisiti: conoscenze base di JavaScript, VSCode e Git
Giorno 2 – Pratiche avanzate e integrazione CI/CD
Creazione di test complessi
- Automatizzazione di flussi utente completi
- Controllo dello stato delle sessioni tramite cy.intercept e cy.session
- Riduzione dei test instabili, miglioramento della stabilità e velocità esecutiva
Test basati su dati
- Memorizzazione dei dati di test in file JSON (fixture)
- Realizzazione di test parametrizzati che utilizzano diversi input per logica comune
Plugin Cypress
- Generazione di report: mochawesome, allure-cypress, junit-reporter
- Interazioni avanzate: cypress-file-upload, cypress-real-events
- Accessibilità: cypress-axe, cypress-audit
- Regressione visiva: cypress-image-snapshot
- Facilitazione della manutenzione: @testing-library/cypress, cypress-plugin-tab
Integrazione di Cypress in CI/CD
- Integrazione con GitHub Actions
- Configurazione dell’ambiente Node.js e Cypress, esecuzione in modalità headless
- Avvio automatico dei test al momento del push o della creazione di una PR
- Gestione sicura delle credenziali e dati sensibili
Riepilogo e conclusioni
Requisiti
- Conoscenza di base dei concetti legati ai test software
Destinatari
- Tester di software
Recensioni (3)
esercitazioni pratiche, più facile da ricordare
ashley bolen - Insurance Corporation of British Columbia
Corso - Test Automation with Selenium
Traduzione automatica
Argomento molto interessante e formatore molto competente
Pedro Miguel Costa - Natixis
Corso - Automation Testing with Cypress
Traduzione automatica
Gli argomenti principali possono essere discussi e concordati con l'inistruttore in anticipo. Atmosfera rilassata e piacevole durante i giorni del seminario.
Lorenz - Continentale Lebensversicherung AG
Corso - Advanced Selenium
Traduzione automatica