Skip to content

getsentry/jest-sentry-environment

 
 

Repository files navigation

jest-sentry-environment

Adds Sentry performance monitoring to your jest test suites to find your slowest tests.

Sentry Example

Installation

First, you will need to add the jest-sentry-environment package to your application, as well as the Sentry SDKs.

npm install @sentry/node @sentry/tracing @sentry/profiling-node jest-sentry-environment

Then, in your jest configuration file, e.g. jest.config.js you will need to specify the path to the environment as well as some options.

{
  testEnvironment: '@sentry/jest-environment/jsdom', // or `@sentry/jest-environment/node` for node environment
  testEnvironmentOptions: {
    sentryConfig: {
      // `init` will be passed to `Sentry.init()`
      init: {
        dsn: '<your DSN here>'
        environment: !!process.env.CI ? 'ci' : 'local',
        tracesSampleRate: 1,
        profilesSampleRate: 1
      },

      transactionOptions: {
        // `tags` will be used for the test suite transaction
        tags: {
          branch: process.env.GITHUB_REF,
          commit: process.env.GITHUB_SHA,
        },
      },
    },
  },
}

You can either import the jsdom or node environments. You can also customize the base environment by specifying your own testEnvironment.

testEnvironment: './path/to/env.js',

In ./path/to/env.js:

const {createEnvironment} = require('jest-sentry-environment');

return createEnvironment({
  baseEnvironment: require('jest-environment-node'),
});

About

Sentry performance instrumentation for jest

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 97.2%
  • Shell 2.8%