A production-grade, business-critical Frontend Test Automation Framework engineered over Cypress 13 and JavaScript, utilizing Cucumber for Behavior-Driven Development (BDD).
This framework acts as an enterprise regression matrix validating complex transactional identity and authentication states over the target platform. It features an isolated pre-execution background hooks pipeline to automatically handle user entity creation, multi-browser parallel execution layouts, and a headless CI/CD orchestration that publishes metrics directly onto live GitHub Pages instances.
🎯 Focus: Asynchronous single-page validation, cross-browser concurrency testing, CI/CD reporting pipelines, and stable user lifecycle isolation.
- 🏗️ Page Object Model (POM) Design: Strict structural decoupling of web UI element locators and DOM mutation actions from the step validation parameters.
- 🥒 Behavior-Driven Specification Layers: Declarative functional business rules mapped through Gherkin files to bridge technical development tracking with user experience gates.
- 🔄 Autonomous Pre-Condition Lifecycle: Multi-stage background hook setups built to automatically provision new user assets on the application under test prior to testing routines.
- ⚡ Multi-Browser Concurrent Execution: Cross-browser execution layer powered by
npm-run-allexecuting testing suites in parallel across Google Chrome, Mozilla Firefox, and Microsoft Edge engines. - 🤖 Automated GitHub Actions CI/CD: Fully decoupled deployment pipeline (.yml workflow) managing headless matrix execution and dynamic Allure Report building onto live GitHub Pages environments.
The tree model encapsulates functional components under strict enterprise software testing guidelines:
automationexercise-cypress-bdd/
│
├── .github/workflows/
│ └── cypress-allure.yml # Headless CI/CD execution and GitHub Pages distribution engine
│
├── cypress/
│ ├── e2e/
│ │ └── login/ # Dynamic BDD Feature files and JS step definitions
│ │
│ ├── pages/ # POM Object layers (Encapsulated UI interaction elements)
│ └── support/ # Configuration endpoints, global assertions, and custom commands
│
├── cypress.config.js # Main configurations and event-listener interceptors
├── package.json # Node.js orchestration ecosystem manifest and concurrency scripts
└── README.md # Technical documentation
- 📈 Slashed Test Script Maintenance Overhead: Achieved modular design layout by encapsulating interface layers into Page Object Model (POM) structural classes.
- ⚡ Accelerated Cross-Browser Lifecycles: Compressed integration validation cycles drastically by configuring parallel execution pipelines on multiple modern browser engines.
- 🛡️ Autonomous State Setup Mitigation: Eliminated test execution interdependency by deploying dynamic pre-request background triggers for clean data provisioning.
- 📊 Audit-Ready Validation Transparency: Streamlined technical fault debugging by porting execution artifacts seamlessly into automated, interactive live web metrics via GitHub Pages.
Ensure your local host has the following node environment active:
- Node.js (v18 or higher)
- NPM (Node Package Manager)
git clone https://github.com
cd Automation-Exercise-Cypress-cucumber-allure-framework
npm installnpm run cy:opennpm run cy:runnpm run parallelTo clean, compile, and visualize comprehensive analytics from test execution footprints on your machine workspace, execute:
# Compile and generate comprehensive visual Allure Report dashboards
npm run allure:generate
# Launch local server instance to review test performance trends
npm run allure:open
# Combined single command string execution (Run regression + Compile + Open logs)
npm run cy:run:allureVictor Guzmán
Computational Scientist | Backend Engineer | Software Quality & Test Automation Specialist
- 🔗 LinkedIn: https://linkedin.com