Skip to content

test: implement end-to-end (E2E) testing #32

@ArDnath

Description

@ArDnath

Priority: Low
Difficulty: ⭐⭐⭐


Summary

Set up an end-to-end testing framework using Playwright or Cypress to validate complete user flows in the application.
E2E tests should cover authentication, shopping flows, and product search/filtering.
Integrate automated E2E tests into CI/CD to ensure reliability before deployments.


Tasks

1. Setup

  • Install and configure either Playwright or Cypress
  • Add project-level configuration (playwright.config.ts or cypress.config.ts)
  • Add npm scripts for running E2E tests locally and in CI

2. Authentication Flow Tests

  • Write E2E test for sign-up flow
  • Write E2E test for sign-in flow
  • Validate redirection and session persistence

3. Shopping Flow Tests

  • Write test for:
    • Adding item to cart
    • Navigating to checkout
    • Placing an order
  • Validate UI updates and correct API behavior

4. Product Search & Filtering Tests

  • Write test for search autocomplete
  • Validate filtering across categories, price, and sort order
  • Ensure results update correctly

5. CI/CD Integration

  • Configure E2E test execution in CI pipeline
  • Add artifacts for failed test screenshots/videos
  • Ensure tests are stable before enabling required checks

Learning Goals

  • Implementing end-to-end test automation
  • Validating real user flows
  • Ensuring reliability during deployments via CI-integrated testing
  • Testing authentication, cart, checkout, and search workflows

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions