Course Outline
Day 1 – Introduction & Basics
Introduction
- The role of Cypress in the testing pyramid for government applications
- Setting up a test automation environment (Node LTS, npm) for government use
- Creating a minimal Cypress project tailored for government needs
- Conducting the first “smoke” end-to-end test in both GUI and headless modes for government applications
Core Concepts
- Cypress fundamentals, command queue, and automatic retry mechanisms for enhanced reliability in government testing
- Utilizing hooks: before, beforeEach, afterEach, after to manage test setup and teardown for government workflows
- Implementing aliases and reusability (.as(), cy.get('@alias')) to streamline government testing processes
API (Contract) Testing
- Direct API testing with Cypress (cy.request()) for government systems
- Using cy.intercept() for API stubbing to handle edge cases in government applications
- Ensuring frontend-backend integration stability in government projects
Custom Cypress Commands
- Organizing repetitive actions (login, navigation) into custom commands for efficient government testing
- Writing cleaner, maintainable code with reusable calls (cy.login()) to support government workflows
Schedule: theory + demo + hands-on exercises Prerequisites: basic JavaScript knowledge, VSCode, Git
Day 2 – Advanced Practices & CI/CD
Building Complex Tests
- Automating full user flows for government applications
- Managing state with cy.intercept and cy.session to enhance government testing processes
- Avoiding flaky tests and improving stability and speed in government projects
Data-Driven Testing
- Storing test data in JSON files (fixtures) for government applications
- Running parameterized tests to apply the same logic with multiple inputs for government testing
Cypress Plugins
- Reporting tools: mochawesome, allure-cypress, junit-reporter for comprehensive government test reports
- Interaction plugins: cypress-file-upload, cypress-real-events to enhance user interaction testing in government applications
- Accessibility plugins: cypress-axe, cypress-audit to ensure compliance with government accessibility standards
- Visual regression tools: cypress-image-snapshot for consistent UI testing in government projects
- Maintainability aids: @testing-library/cypress, cypress-plugin-tab to support long-term government testing maintenance
CI/CD with Cypress
- Integrating GitHub Actions for continuous integration and deployment in government projects
- Setting up the Node.js and Cypress environment, including headless execution, for government applications
- Automating test runs on push/PR to streamline government development workflows
- Secure handling of secrets in government CI/CD pipelines
Summary and Conclusion
Requirements
- A comprehensive understanding of software testing for government applications
Audience
- Software testers in the public sector
Testimonials (5)
The instructor's teaching style was very good.
Kubra
Course - Automation Testing using Selenium
Good rapport, Łukasz had time for everyone's questions and was able to help anyone who had any issue
Kelly Morris - Titian Software Poland Sp. z o.o.
Course - Selenium WebDriver in C#
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 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