@rabi-siddique/testing-package
v4.1.1
Published
[![npm version](https://badge.fury.io/js/@agoric%2Fsynpress.svg)](https://badge.fury.io/js/@agoric%2Fsynpress) [![E2E (docker)](https://github.com/agoric-labs/synpress/actions/workflows/e2e_docker.yml/badge.svg?branch=master)](https://github.com/agoric-la
Downloads
512
Readme
@agoric/synpress
is a testing framework designed to test DApps that use the
Keplr Wallet.
For full commands and their examples, check here.
🖥️ Install
# with pnpm
pnpm add --save-dev @agoric/synpress
# with npm
npm install --save-dev @agoric/synpress
# with yarn
yarn add -D @agoric/synpress
👝 Supported wallets
👷 Example setup
Project structure:
project_dir
└── src
└── tests
└── e2e
└── support.js
└── specs
└── example-spec.js
- Create
support.js
inside your tests folder (/project_dir/tests/e2e
):
import '@agoric/synpress/support/index';
^ hint: you can also use this file to extend synpress - add custom commands, and more..
- Add a command to your package.json file
{
...
"scripts": {
...
"test:e2e": "EXTENSION=keplr synpress run"
}
}
- (Optional) Create a custom config file. @agoric/synpress aleardy has some
configurations set up in this
file.
To override this and add your custom config, you can create your own config
file
synpress.config.js
in/project_dir/tests/e2e
const baseConfig = require('@agoric/synpress/synpress.config');
const { defineConfig } = require('cypress');
module.exports = defineConfig({
...baseConfig,
e2e: {
...baseConfig.e2e,
baseUrl: 'http://localhost:5173',
},
});
use this config by passing the
--configFile
flag to synpress
{
...
"scripts": {
...
"test:e2e": "EXTENSION=keplr synpress run --configFile=test/e2e/synpress.config.js"
}
}
- You're done! 🎉
For an example project, you can take a look at how we've set up tests in this repository
📃 Environmental variables
| Variable | Description |
| ---------------------- | --------------------------------------------------------------------------------------------------- |
| EXTENSION
(Required) | Picks which extension to use during tests. keplr
and metamask
are the only possible values |
| SECRET_WORDS
| Space separated words for the test wallet recovery phrase (mnemonic; 24 words) |
| PRIVATE_KEY
| Test wallet private key |
| SYNDEBUG
| Set debugging mode to be on |
| STABLE_MODE
| Introduce delay between main actions, 300ms by default (eg STABLE_MODE=300ms
, STABLE_MODE=true
) |
| SLOW_MODE
| Introduce delay between every action, 50ms by default (eg SLOW_MODE=true
, SLOW_MODE=200ms
) |
| KEPLR_VERSION
| Keplr version to be installed |
| SKIP_KEPLR_INSTALL
| Will skip installation of keplr wallet |
| SKIP_EXTENSION_SETUP
| Will skip initial setup of wallet |
These is a basic list of environment variables to be used. A more in depth list can be found here
📝 More resources
@agoric/synpress
uses Synpress as its base and therefore supports most of its
functionality. To learn more about command line options, usage examples, and
CI/CD setup, you can use the original
README file