
Product
Introducing Rust Support in Socket
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.
sentry-testkit
Advanced tools
Sentry Testkit enables Sentry to work natively in your application while running tests. The report is not really sent but rather logged locally into memory. In this way, the logged reports can be fetched for your own verification or any other purpose in y
Supply Chain Security
Vulnerability
Quality
Maintenance
License
Sentry is an open-source JavaScript SDK published by Sentry to enable error tracking that helps developers monitor and fix crashes in real time.
However, when building tests for your application, you want to assert that the right flow-tracking or error is being sent to Sentry, but without really sending it to Sentry servers. This way you won't swamp Sentry with false reports during test running and other CI operations.
Sentry Testkit enables Sentry to work natively in your application, and by overriding the default Sentry transport mechanism, the report is not really sent but rather logged locally into memory. In this way, the logged reports can be fetched later for your own usage, verification, or any other use you may have in your local developing/testing environment.
npm:
npm install sentry-testkit --save-dev
yarn:
yarn add sentry-testkit --dev
// some.spec.js
const sentryTestkit = require('sentry-testkit')
const {testkit, sentryTransport} = sentryTestkit()
// initialize your Sentry instance with sentryTransport
Sentry.init({
dsn: 'some_dummy_dsn',
transport: sentryTransport,
//... other configurations
})
test('collect error events', function () {
// run any scenario that eventually calls Sentry.captureException(...)
expect(testkit.reports()).toHaveLength(1)
const report = testkit.reports()[0]
expect(report).toHaveProperty(...)
});
// Similarly for performance events
test('collect performance events', function () {
// run any scenario that eventually calls Sentry.startTransaction(...)
expect(testkit.transactions()).toHaveLength(1)
});
See full API description and documentation here: https://zivl.github.io/sentry-testkit/
sentry-testkit
relies on express
and http
packages from NodeJS. We have separated entry sentry-testkit/browser
where we not include any NodeJS-related code.
const sentryTestkit = require('sentry-testkit/browser')
const { testkit } = sentryTestkit()
// Your code for browser
The good old legacy raven-testkit
documentation can be found here. It it still there to serve Raven
which is the old legacy SDK of Sentry for JavaScript/Node.js platforms
We're constantly and automatically updating our CHANGELOG file, so its always a good spot to checkout what have we been up to...
We'd love any kind of contribution, to get better, improve our capabilities, fix bugs and bring more features as Sentry expanding their tools as well. Please check our CONTRIBUTING guidelines for more info and how to get started.
Sentry Testkit is MIT licensed.
FAQs
Sentry Testkit enables Sentry to work natively in your application while running tests. The report is not really sent but rather logged locally into memory. In this way, the logged reports can be fetched for your own verification or any other purpose in y
The npm package sentry-testkit receives a total of 79,611 weekly downloads. As such, sentry-testkit popularity was classified as popular.
We found that sentry-testkit demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.
Product
Socket’s precomputed reachability slashes false positives by flagging up to 80% of vulnerabilities as irrelevant, with no setup and instant results.
Product
Socket is launching experimental protection for Chrome extensions, scanning for malware and risky permissions to prevent silent supply chain attacks.