feat: add E2E testing package with Playwright#88
feat: add E2E testing package with Playwright#88N-45div wants to merge 2 commits intosolana-foundation:mainfrom
Conversation
- Add @solana/e2e package with Playwright test infrastructure - Create wallet harness abstraction for Phantom, Solflare, Backpack - Add happy path wallet connection tests - Add CI workflow for E2E tests (.github/workflows/e2e.yml) - Add test:e2e task to turbo.json - Tests gracefully skip when wallet extensions are not available Closes solana-foundation#77
|
@N-45div Am i understanding that running the test in headed mode is needed to work with extension wallets? If that's the case i think we need to review a bit the approach i proposed in #77. The goal here was to have a higher level of confidence than the unit tests. Let's either research a way to add a wallet-standard injected script or get the full test suite running here against extension in CI. What do you think? |
- Add mock wallet that implements wallet-standard interface - Inject mock wallet via Playwright's addInitScript - Add mock wallet E2E tests (5 passing, 2 skipped) - Tests run without real browser extensions in CI - Provides higher confidence than unit tests This addresses the review feedback requesting wallet-standard injected script approach for reliable CI testing.
|
Thanks for the feedback @GuiBibeau ! I've updated the PR with a mock wallet-standard implementation. Changes
Test Results
How it worksThe mock wallet implements the wallet-standard interface ( This approach provides higher confidence than unit tests while being reliable in CI without needing actual browser extensions. Let me know if you'd like any changes! |
|
Hey i think i'll park this for the time being. I don't think the value is present to merge this. I thank you very much for your work on this exploration! Your other PR is merged! |
Summary
Adds a Playwright E2E testing package for wallet connection testing, addressing #77.
Changes
@solana/e2eat tests/e2e/test:e2etaskTest Results
How to Test Locally