Course Outline
Day 1 – Introduction & Basics
Introduction
- Role of Cypress in the testing pyramid
 - Test automation environment setup (Node LTS, npm)
 - Creating a minimal Cypress project
 - First “smoke” E2E test in GUI and headless mode
 
Core Concepts
- Cypress fundamentals, command queue, automatic retry
 - Using hooks: before, beforeEach, afterEach, after
 - Aliases and reusability (.as(), cy.get('@alias'))
 
API (Contract) Testing
- Direct API testing with Cypress (cy.request())
 - API stubbing with cy.intercept() for edge cases
 - Ensuring frontend-backend integration stability
 
Custom Cypress Commands
- Organizing repetitive actions (login, navigation) into custom commands
 - Cleaner, maintainable code with reusable calls (cy.login())
 
Schedule: theory + demo + hands-on exercises Prerequisites: basic JS knowledge, VSCode, Git
Day 2 – Advanced Practices & CI/CD
Building Complex Tests
- Automating full user flows
 - State control with cy.intercept and cy.session
 - Avoiding flaky tests, improving stability and speed
 
Data-Driven Testing
- Storing test data in JSON files (fixtures)
 - Parameterized tests running the same logic with multiple inputs
 
Cypress Plugins
- Reporting: mochawesome, allure-cypress, junit-reporter
 - Interactions: cypress-file-upload, cypress-real-events
 - Accessibility: cypress-axe, cypress-audit
 - Visual regression: cypress-image-snapshot
 - Maintainability: @testing-library/cypress, cypress-plugin-tab
 
CI/CD with Cypress
- GitHub Actions integration
 - Setting up Node.js and Cypress environment, headless execution
 - Automatic test runs on push/PR
 - Secure handling of secrets
 
Summary and conclusion
Requirements
- An understanding of software testing
 
Audience
- Software testers
 
Testimonials (5)
The exercises we saw in the course were quite useful and applicable to my activities at work. Doubts were resolved, and the examples shared are quite helpful.
jocelin salas - BANXICO
Course - Test Automation with Selenium and Python
Machine Translated
I enjoyed everything as it is all new for me and I can see the added value it can ring to my work.
Zareef - BMW South Africa
Course - Tosca: Model-Based Testing for Complex Systems
The Dynamics.
Cesar Ortiz Lara - Bienes Programados SA de CV
Course - Selenium WebDriver in C#
Machine Translated
The trainer explained every functionality thoroughly.
Argean Quilaquil - DXC
Course - TestComplete
Trainer is nice. His explanation is clear and interesting. He try to make the lessons interesting as possible. I enjoyed the lesson and gained a lot of knowledge. Thank you so much. The most useful technique I learned is the locating elements for different web component like textbox, radio buttons and buttons. Sometimes, the element ID is not capture correctly. We learned a different way of locating elements by using CSS selectors, XPath, Name and ID. I like the explanation. Thanks