Sweet Shop is an e-commerce website dedicated to selling retro sweets and candies. This project is designed for a final thesis and includes a comprehensive Cypress E2E testing suite for testing the website π¬SWEETSHOP. The Sweet Shop application serves as a demonstration platform that intentionally incorporates common web development issues to showcase testing methodologies and debugging techniques. As stated by the original developers, this is "an intentionally broken web application to help demonstrate Chrome DevTools" and encompasses real-world scenarios that QA engineers encounter when testing e-commerce platforms. The project demonstrates practical application of modern testing frameworks in identifying functionality gaps, user interface inconsistencies, and performance bottlenecks that could affect customer satisfaction and conversion rates. The implementation utilizes structured documentation through testCases.md for comprehensive test case specifications, proper version control practices with .gitignore configuration, automated dependency management via package.json, and CI/CD integration through GitHub Actions workflows. The project architecture incorporates Cypress configuration files, custom commands, and organized test suites that follow industry best practices for maintainable test automation.
- Learn Cypress E2E testing principles
- Automate web application testing
- Ensure website functionality quality
- Evaluate performance and accessibility aspects
URL: π¬SWEETSHOP
| Test Suite | Test Cases | Status |
|---|---|---|
| TS01: Homepage | 1 TC | β Complete |
| TS02: Navigation Menu | 18 TC | β Complete |
| TS03: Sweets Page | 3 TC | β Complete |
| TS04: About Page | 3 TC | β Complete |
| TS05: Shopping Basket | 4 TC | β Complete |
| TS06: Login Page | 4 TC | β Complete |
| TS07: Checkout Process | 3 TC | β Complete |
cypress/
βββ e2e/
β βββ TS01-page-loading.cy.js
β βββ TS02-navigation-menu.cy.js
β βββ TS03-sweets-page.cy.js
β βββ TS04-about-page.cy.js
β βββ TS05-shopping-basket.cy.js
β βββ TS06-login-page.cy.js
β βββ TS07-checkout-process.cy.js
βββ support/
β βββ e2e.js
β βββ commands.js
βββ .github/
βββ workflows/
βββ node.js.yml
- Node.js v22
- npm
- Clone
git clone https://github.com/Cyber9933/Final-Sweet-Shop-present.git
cd final_candy_shop- Install dependencies
npm install- Install Cypress
npm install cypress --save-devnpm run cypress:opennpm run cypress:run# npx cypress run --spec "file name"
npx cypress run --spec "cypress/e2e/TS01_page_loading.cy.js"
Tests automatically run on:
- Push to main branch
- Pull requests to main branch
Configuration: .github/workflows/node.js.yml
# Chrome
npx cypress run --browser chrome
β
Homepage loading and title verification
β
Sweet Shop branding elements display
β
Navigation menu visibility
β
Primary links functionality (Home, Sweets, About, Login, Basket)
β
"Browse sweets" page loading
β
Product catalog displayβ
Navigation between all pages from all pages
β
URL routing verification
β
Page headers validation
β
All products display with prices
β
Product information accuracy (Wham Bars Β£0.15, Chocolate Cups Β£1.00)
β
Product images and accessibility verification
β
Adding items to basket
β
Basket content display
β
Removing items from basket
β
Empty basket state handling
β
Login form accessibility
β
Form field validation
β
Error handling for incorrect credentialsβ
About page content quality
β
Navigation stability
β
Error page handling ("Page not found" scenarios)
β
Checkout page accessibility verification
β
Form elements structure maintenance
β
Order summary verification with different basket content
β
Navigation functionality across all pages
β
Form validation functionality
β
Sweet Shop "intentionally broken" application behavior handling- Automatically generated on failures
- Saved to
cypress/screenshots/ - Included into .gitignore file
- β All tests pass (100% pass rate)
- β Page loading < 4s
- β No console errors
Project Author: Lina PanavaitΔ
Email: linate.pa@gmail.com
GitHub: github.com/Cyber9933
This project is intended for educational purposes for final thesis.
Sweet Shop Cypress Testing Suite - Automated e-commerce website testing πβ¨