Cypress E2E test automation suite for https://practice.expandtesting.com.
yarn installInteractive mode (opens Cypress UI):
yarn testHeadless mode:
yarn test:headlessBuild the image:
podman build -t cypress-local .Run tests in container:
podman run --rm cypress-localRun with specific browser:
podman run --rm cypress-local run --headless --browser chromeRun with specific spec:
podman run --rm cypress-local run --headless --browser firefox --spec cypress/e2e/tests/login.e2e.cy.tsTrigger workflow manually:
- Go to Actions tab
- Select Cypress GitHub Actions
- Click Run workflow
Runs tests against Chrome, Edge, and Firefox in parallel. Reports are uploaded as artifacts after execution.
- cypress/e2e/tests/ - Test specs (.cy.ts files)
- cypress/locators/ - Element locators organized by page
- cypress/pages/ - Page Object Model classes with reusable methods
- cypress/fixtures/ - Test data (JSON files)
- cypress/support/ - Custom commands and setup
- cypress/reports/ - Test reports generated after runs
- User login/registration
- Form inputs and validation
- Dynamic table flows
- Dynamic table pagination
- Drag and drop interactions
- Add/remove elements
- Notification handling
- API spies, stubs, and clocks
- Cypress 15.7.0
- TypeScript 5.9.3
- Page Object Model pattern
- Mochawesome Reporter for HTML reports