1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-22 09:23:21 +01:00

[doc] add Jest debugging guide (docs/tests/jest.md) (#17594)

* docs: add tests/jest.md debugging guide

* docs:jest.md: add basic test command

* README.md: add docs/tests/jest.md link
This commit is contained in:
Ariella Vu 2023-02-06 20:03:22 +07:00 committed by GitHub
parent 8cda817f5c
commit 0349c6ba16
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 68 additions and 0 deletions

View File

@ -59,6 +59,8 @@ Run unit tests and the linter with `yarn test`. To run just unit tests, run `yar
You can run the linter by itself with `yarn lint`, and you can automatically fix some lint problems with `yarn lint:fix`. You can also run these two commands just on your local changes to save time with `yarn lint:changed` and `yarn lint:changed:fix` respectively.
For Jest debugging guide using Node.js, see [docs/tests/jest.md](docs/tests/jest.md).
### Running E2E Tests
Our e2e test suite can be run on either Firefox or Chrome.

66
docs/tests/jest.md Normal file
View File

@ -0,0 +1,66 @@
# Getting Started
## Running a Jest test
```bash
> yarn jest <path>
```
## Debugging
### Debugging Jest in VS Code
1. Open **VS Code**
2. Open the “Run and Debug” panel (⇧⌘D)
3. Click the “JavaScript Debug Terminal” button to open the Terminal
4. Run Jest using Node
```bash
> yarn jest --watch <path>
```
Additional methods and information to debug in VS Code can be found [here](https://jestjs.io/docs/troubleshooting#debugging-in-vs-code)
### Debugging Jest on Chrome DevTools
1. Run Jest using Node with the V8 Inspector
```bash
> node --inspect ./node_modules/.bin/jest --watch -i <path>
or
> node --inspect ./node_modules/.bin/jest <path>
```
**Options:**
```jsx
node:
--inspect=[host:]port
Activate inspector on host:port. Default is 127.0.0.1:9229.
V8 Inspector integration allows attaching Chrome DevTools and IDEs
to Node.js instances for debugging and profiling. It uses the
Chrome DevTools Protocol.
jest:
--watch Watch files for changes and rerun tests
related to changed files. If you want to
re-run all tests when a file has changed,
use the `--watchAll` option. [boolean]
-i, --runInBand Run all tests serially in the current
process (rather than creating a worker pool
of child processes that run tests). This is
sometimes useful for debugging, but such use
cases are pretty rare. [boolean]
```
1. Open Chrome DevTools for Node
1. Open a **Chromium** browser
2. Go to [chrome://inspect/#devices](chrome://inspect/#devices)
3. Click “Open dedicated DevTools for Node” link