Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Dec 11, 2025

Replaces Cypress with Playwright for all E2E testing (45 tests across demo and vue-json-form packages).

Changes

Test Migration

  • Accessibility tests: Migrated to @axe-core/playwright from cypress-axe
  • Form interaction tests: Converted to Playwright's locator API and expect assertions
  • Test structure: .cy.ts.spec.ts, moved to tests/e2e/ directories

Configuration

  • Added playwright.config.ts with built-in webServer support (removes need for start-server-and-test)
  • Configured Chromium as test browser with retry logic for CI

CI/CD

# Before: Cypress GitHub Action with manual server orchestration
- name: Cypress run
  uses: cypress-io/github-action@v6
  with:
    build: yarn run build
    start: yarn dev
    wait-on: 'http://localhost:5173'

# After: Direct Playwright execution
- name: Install Playwright Browsers
  run: yarn playwright install --with-deps chromium
- name: Run Playwright tests
  run: yarn test:e2e

Package Scripts

  • test:e2e: cypress runplaywright test
  • test:e2e:dev: cypress openplaywright test --ui

Cleanup

  • Removed Cypress dependencies: cypress, cypress-axe, @cypress/grep, start-server-and-test
  • Deleted cypress/ directories and config files
  • Updated TypeScript configs and documentation

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • download.cypress.io
    • Triggering command: /usr/local/bin/node /usr/local/bin/node dist/index.js --exec install (dns block)
  • esm.ubuntu.com
    • Triggering command: /usr/lib/apt/methods/https /usr/lib/apt/methods/https (dns block)
  • ofcncog2cu-dsn.algolia.net
    • Triggering command: /usr/local/bin/node /usr/local/bin/node /home/REDACTED/work/vue-json-form/vue-json-form/.yarn/releases/yarn-4.12.0.cjs add -D @playwright/test playwright (dns block)
    • Triggering command: /usr/local/bin/node /usr/local/bin/node /home/REDACTED/work/vue-json-form/vue-json-form/.yarn/releases/yarn-4.12.0.cjs add -D @playwright/test playwright @axe-core/playwright (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

migrate from cypress to playwright


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 3 commits December 11, 2025 09:15
Co-authored-by: neferin12 <33598039+neferin12@users.noreply.github.com>
Co-authored-by: neferin12 <33598039+neferin12@users.noreply.github.com>
Co-authored-by: neferin12 <33598039+neferin12@users.noreply.github.com>
Copilot AI changed the title [WIP] Migrate testing framework from Cypress to Playwright Migrate E2E tests from Cypress to Playwright Dec 11, 2025
Copilot AI requested a review from neferin12 December 11, 2025 09:26
@github-actions
Copy link

github-actions bot commented Dec 11, 2025

size-limit report 📦

Path Size
VueJsonForm 523 B (0%)
VueJsonForm CSS 987 B (0%)
WebComponent Module 181.47 KB (0%)
WebComponent Shadow DOM 224.92 KB (0%)
WebComponent Shadow DOM Module 204.84 KB (0%)
WebComponent AjvValidator 222.28 KB (0%)
WebComponent AjvValidator Module 168.05 KB (0%)
WebComponent CSS 3.63 KB (0%)
AjvValidator Module 1.49 KB (0%)
Schema Package Module 404 B (0%)

@neferin12 neferin12 force-pushed the copilot/migrate-from-cypress-to-playwright branch from 68e31b9 to 507aaf8 Compare December 12, 2025 14:16
@neferin12 neferin12 marked this pull request as ready for review December 12, 2025 14:16
@github-actions
Copy link

Test Results

44 tests   44 ✅  1m 8s ⏱️
 3 suites   0 💤
 1 files     0 ❌

Results for commit 02d3be3.

@neferin12 neferin12 merged commit 5c72a67 into master Dec 12, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants