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: 4 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
- Created: 2020-11-18T22:10:14.000Z (over 4 years ago)
- Default Branch: dev
- Last Pushed: 2024-11-03T20:05:22.000Z (5 months ago)
- Last Synced: 2024-11-04T07:29:35.645Z (5 months ago)
- Topics: blockchain, cypress, docker, e2e, ethereum, metamask, playwright, testing
- Language: TypeScript
- Homepage: https://synpress.io
- Size: 73.7 MB
- Stars: 603
- Watchers: 15
- Forks: 191
- Open Issues: 92
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: .github/SECURITY.md
- Support: .github/SUPPORT.md
Awesome Lists containing this project
- awesome-blockchain-testing - synpress - E2E testing framework based on Cypress and Playwright with support for MetaMask (Web3 Testing / Whitepapers)
- awesome-web3-tools-and-dapps - Synpress - Synpress is a testing framework that lets you test everything from start to finish easily. It has support for metamask, a tool that makes testing on the Ethereum blockchain simple. (dApps directory / Web3 Testing Tools)
- best-of-crypto - GitHub - 42% open ยท โฑ๏ธ 30.05.2024): (Decentralized Finance (DeFi))
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_)