Skip to content

Set Up Playwright End-to-End (E2E) Test Suite with Synpress #93

Description

@Lakes41

Background

The application relies solely on basic unit tests. There are no automated browser tests that actually verify the frontend connecting to a wallet and signing transactions.

Problem

Frequent UI updates occasionally break core smart contract interaction flows, and manual regression testing before every deployment is tedious and error-prone.

Expected Outcome

A robust End-to-End testing pipeline utilizing Playwright and Synpress (a MetaMask automation wrapper) to simulate real user wallet interactions in a headless browser.

Suggested Implementation

  • Install @synthetixio/synpress and configure it alongside Playwright.
  • Write test cases for the critical path: Connect Wallet -> Navigate to Vault -> Input Amount -> Approve Token -> Deposit Token.
  • Connect the tests to a local Hardhat/Anvil fork network so real transactions can be simulated safely in CI.

Acceptance Criteria

  • E2E tests successfully mock a MetaMask extension, import a local test account, and sign a transaction.
  • GitHub Actions CI pipeline runs the Synpress suite on every pull request targeting the main branch.

Likely Affected Files

  • tests/e2e/deposit.spec.ts
  • playwright.config.ts
  • .github/workflows/e2e-tests.yml

Requirements

  • Tests must run reliably in CI without timing out due to slow network mock responses.

Metadata

Metadata

Assignees

Labels

GrantFox OSSRelated to GrantFox Open Source Software initiativesMaybe RewardedPotential for a reward based on contributionOfficial Campaign | FWC26Period after the official FIFA World Cup 2026 campaignQAQuality AssuranceadvancedRequires advanced knowledge or skillstestingTesting and test coverage

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions