This project is an end-to-end test automation framework using Cypress, designed for validating web application functionality, UI elements, and API responses. It follows best practices in SDET (Software Development Engineer in Test) principles, ensuring reliability, maintainability, and scalability in automated testing.
- Automated test execution for web applications using Cypress.
- Page Object Model (POM) for scalable test design.
- API testing using Postman and Cypress.
- CI/CD integration for automated test execution in pipelines.
- Detailed test execution reports with screenshots and logs.
- Parallel execution support for faster test runs.
- Data-driven testing approach for robust validation.
- Test Framework: Cypress
- Programming Language: JavaScript
- Assertions: Mocha & Chai
- API Testing: Postman, Cypress API Requests
- Version Control: Git, GitHub
- CI/CD: GitHub Actions (or Jenkins if applicable)
- Reporting: Mochawesome, Allure Reports
- Clone the repository:
git clone https://github.com/PromojitPaul/cypress-project.git
- Navigate to the project directory:
cd cypress-project - Install dependencies:
npm install
- Open Cypress Test Runner:
npx cypress open
- Run tests in headless mode:
npx cypress run
- Execute specific test suite:
npx cypress run --spec cypress/integration/testfile.spec.js
- Generate test reports:
npm run report
- Functional Testing: Validates core application functionality.
- UI Testing: Ensures UI elements are displayed and function as expected.
- API Testing: Validates API endpoints and responses.
- Regression Testing: Runs automated tests to prevent code breakage.
- Performance Testing: Measures response time for key application workflows.
├── cypress/
│ ├── fixtures/ # Test data files (JSON format for mock data)
│ ├── integration/ # Test scripts for different modules
│ │ ├── login.spec.js # Login module tests
│ │ ├── checkout.spec.js # Checkout workflow tests
│ │ ├── search.spec.js # Search functionality tests
│ ├── plugins/ # Cypress plugins for extended capabilities
│ ├── support/ # Custom commands and configurations
│ │ ├── commands.js # Custom Cypress commands
│ │ ├── index.js # Global test configurations
│ ├── videos/ # Recorded test execution videos
│ ├── screenshots/ # Screenshots captured during test failures
├── cypress.json # Cypress configuration file
├── package.json # Project dependencies
├── README.md # Documentation
- The project is configured to run tests on each code push.
- Automated test execution is triggered via GitHub Actions.
- Reports are generated and stored for reference.
This Cypress-based automation project demonstrates proficiency in automated software testing, CI/CD pipeline integration, and scalable test development, making it ideal for SDET/QA roles.
For more details, explore the repository or connect via GitHub.