testing-library-spy
v0.0.3
Published
Real-time spying of HTML rendered by Testing Library
Downloads
10
Readme
Testing Library Spy
Real-time spying of HTML rendered by Testing Library.
Testing Library Spy is useful when writing and debugging tests that leverage Testing Library to render the HTML. It enables you to see currently rendered HTML while debugging the test and stepping between Testing Library commands & DOM updates.
Installation
This module is distributed via npm and should be installed as one of your project's devDependencies
:
npm install --save-dev testing-library-spy
or for installation via yarn
yarn add -D testing-library-spy
Usage in test runners
- Initialize Spy console before test run:
const { initSpyConsole } = require('testing-library-spy');
initSpyConsole();
Command detects whether debugger is running and in that case enables spying functionality. In case when process is run normally (such as during CI), functionality is not enabled at all.
If using Jest, add code to one of files inside one of files referenced inside setupFiles
directive inside your jest.config.js
.
Place breakpoint inside test
Run that test with debugger
Open Spy console in
http://localhost:3888
Step through the test to see changes in console
Note: HTML output does not update every time. Some changes (such as React updates, DOM mutations) need to happen asynchronously. Therefore, feel free to add arbitrary waiting time into your test during debugging.
Note: use monkey-patched screen.debug()
synchronously refresh Spy console in addition to dumping into the console.
Configuration
Environment variables:
LIVE_PLAYGROUND_ENABLE
(default: not set) - Set to"true"
to force enabling the Spy console. Normally it runs only if debugger is active.