Docs
Jest + React Testing Library Setup

Jest + React Testing Library Setup

Debug flaky and failing Jest + React Testing Library tests directly from CI environments. Use the time-travel debugger along with visual preview and DOM snapshots of your virtual DOM.

Installation

Install the jest plugin into your jest project.

npm install -D @deploysentinel/jest-rtl-debugger

Usage

Add Environment

In your jest config file (ex. jest.config.js) add:
(currently, only jest version 27, 28 and 29 are supported)

module.exports = {
  testEnvironment: '@deploysentinel/jest-rtl-debugger/environment',
  setupFilesAfterEnv: ['<rootDir>/setup-jest.js'],
  globalSetup: '@deploysentinel/jest-rtl-debugger/globalSetup', // optional
  ...
};

Add Setup file

In your setup file (ex. setup-jest.js) add:

const setup = require('@deploysentinel/jest-rtl-debugger/setup');
 
setup();

Configure jest's transform to transform CSS

In your jest config file (ex. jest.config.js) add:

module.exports = {
  transform: {
    '^.+\\.(css|scss|sass|less)$':
      '@deploysentinel/jest-rtl-debugger/transforms/css',
  },
};

Add API Key

Lastly, export your API key to an OS environment variable DEPLOYSENTINEL_API_KEY You can grab your API key by logging into (opens in a new tab)/signing up for (opens in a new tab) DeploySentinel and visiting your profile page: https://deploysentinel.com/profile (opens in a new tab).

DEPLOYSENTINEL_API_KEY=YOUR_API_KEY

Upload Test Artifacts On Passes

By default, the debugger only uploads failed tests artifacts. You can force artifacts upload by setting DEPLOYSENTINEL_UPLOAD_ON_PASSES environment variable to 1, yes or true

DEPLOYSENTINEL_UPLOAD_ON_PASSES=1 ('1', 'yes' or 'true')

Debugging

You can set DEPLOYSENTINEL_LOG_VERBOSE to log debugger error stdout

DEPLOYSENTINEL_LOG_VERBOSE=1 ('1', 'yes' or 'true')