https://github.com/synthetixio/synpress
Synpress is e2e testing framework based on Cypress.io and playwright with support for metamask.
https://github.com/synthetixio/synpress
blockchain cypress docker e2e ethereum metamask playwright testing
Last synced: 2 days ago
JSON representation
Synpress is e2e testing framework based on Cypress.io and playwright with support for metamask.
- Host: GitHub
- URL: https://github.com/synthetixio/synpress
- Owner: Synthetixio
- License: mit
- Created: 2020-11-18T22:10:14.000Z (over 4 years ago)
- Default Branch: dev
- Last Pushed: 2025-05-04T17:27:43.000Z (12 days ago)
- Last Synced: 2025-05-07T15:56:52.600Z (9 days ago)
- Topics: blockchain, cypress, docker, e2e, ethereum, metamask, playwright, testing
- Language: TypeScript
- Homepage: https://synpress.io
- Size: 74.5 MB
- Stars: 651
- Watchers: 17
- Forks: 209
- Open Issues: 111
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
- Security: .github/SECURITY.md
- Support: .github/SUPPORT.md
Awesome Lists containing this project
README
# Synpress
[](https://badge.fury.io/js/%40synthetixio%2Fsynpress)
[](https://discord.gg/XhZKSRGtWc)
[](https://twitter.com/synpress_)
[](https://github.com/Synthetixio/synpress/actions/workflows/codeql.yml)
[](https://dashboard.cypress.io/projects/ohpeaz/runs)> **We're Hiring 🎉** — Think you have what it takes? See open positions [here](https://mirror.xyz/synpress.eth/FXhd5-7e7wBmYYtfmqkF0h7FhDBRUGuGF6j-D7jPpvM).
![]()
Synpress is a powerful and developer-friendly E2E testing library for Web3 dapps, built on top of Cypress and Playwright. It simplifies testing interactions with wallets like MetaMask and other blockchain-specific operations.
## ✨ Features
![]()
- **Playwright and Cypress Support**: Use either Playwright or Cypress as your testing framework, leveraging all their existing features and functionalities with Synpress.
- **One-Time Browser Setup & Caching:** Define your dApps wallet setup once, and let Synpress cache the browser state. This dramatically speeds up test execution and unlocks the full potential of Playwright and Cypress, including parallel testing.
- **Built-in Wallet and Blockchain Agnostic System**: Synpress core is designed to be wallet and blockchain agnostic, offering flexibility for future integrations and broader dApp support.
- **MetaMask Integration**: Deep integration with MetaMask for seamless testing of common dApp interactions.
- **TypeScript Support**: Enhanced TypeScript support for improved type safety and developer experience.
- **Anvil Support**: Easily spin up a local Anvil node with just one line of code for fast and isolated testing.
- **Blazing Fast Performance**: Synpress is optimized for speed, rivalling native Web2 testing framework performance.
- **Improved Debugging**: Detailed error handling, combined with the debugging tools of Playwright and Cypress, makes pinpointing and resolving issues simple.## 🧑💻 Installation
```bash
pnpm add -D @synthetixio/synpress@latest
```## 📝 Documentation
For comprehensive guides, API references, and examples, refer to our [official documentation](https://docs.synpress.io/docs/introduction).
## 🧑🤝🧑 Community
Join our vibrant community for support, discussions, and updates:
## How to Contribute
We welcome contributions from the community! Please refer to our [contributing guidelines](https://docs.synpress.io/docs/contribution).
- [Discord](https://discord.gg/XhZKSRGtWc)
- [X (formerly Twitter)](https://twitter.com/Synpress_)