Skip to content

[Web] Playwright synthetic E2E tests#418

Draft
markmur wants to merge 2 commits into
mainfrom
web-e2e-tests
Draft

[Web] Playwright synthetic E2E tests#418
markmur wants to merge 2 commits into
mainfrom
web-e2e-tests

Conversation

@markmur

@markmur markmur commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

What changes are you making?

Adds a hermetic Playwright end-to-end suite for the web component.

  • Adds a standalone e2e/web package with Playwright, a local static fixture server, and synthetic checkout fixtures.
  • Runs the built platforms/web/dist/index.js in Chromium so the tests exercise the packaged custom element rather than source-only unit-test behavior.
  • Covers custom element registration, overlay/link URL behavior, popup open/close, protocol notifications, completion, unrecoverable errors, and ec.window.open_request delegation.
  • Adds dev web e2e and includes the web e2e suite in dev web check.
  • Wires Web CI to install the e2e package, install Playwright Chromium, typecheck the e2e tests, and run the suite after the web package build.
  • Updates the e2e README with the web suite layout, scope, and local run commands.

How to test

dev web e2e
pnpm --dir e2e/web typecheck

Also verified:

git diff --check

Before you merge

Important

  • I've added tests to support my implementation
  • I have read and agree with the Contribution Guidelines
  • I have read and agree with the Code of Conduct
  • I've updated the relevant platform README (platforms/swift/README.md and/or platforms/android/README.md)

Releasing a new Swift version?
  • I have bumped the version in ShopifyCheckoutKit.podspec
  • I have bumped the version in platforms/swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift
  • I have updated the SwiftPM/CocoaPods version snippets in platforms/swift/README.md (major version only)
Releasing a new Embedded Checkout Protocol version?
  • I have bumped embeddedCheckoutProtocolAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated protocol/languages/kotlin/embedded-checkout-protocol/api/embedded-checkout-protocol.api if the public API changed
Releasing a new Android version?
  • I have bumped checkoutKitAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated the Gradle/Maven version snippets in platforms/android/README.md

Tip

See the Contributing documentation for the full release process per platform.

@github-actions github-actions Bot added the #gsd:50662 Rebase Checkout Kit on UCP label Jul 8, 2026
@markmur markmur changed the title [Web] Playwright E2E tests [Web] Playwright synthetic E2E tests Jul 8, 2026
@markmur markmur self-assigned this Jul 8, 2026
@markmur
markmur force-pushed the web-e2e-tests branch 5 times, most recently from f3bfd23 to f77f9b1 Compare July 8, 2026 09:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant