Testing & Mocking Packages
Testing frameworks, assertion libraries, and mocking tools for writing reliable unit, integration, and end-to-end tests (testify, pytest, Vitest).
Packages in Testing & Mocking
Kind
Sort:Used by Most Apps
Playwright
Cross-browser end-to-end web testing and browser automation with a single API for Chromium, Firefox, and WebKit.
jsdom
A pure-JavaScript implementation of the WHATWG DOM and HTML standards for Node.js.
React Testing Library
Simple and complete React DOM testing utilities that encourage good testing practices.
jest-dom
Custom Jest matchers for asserting on the state of the DOM in your tests.
user-event
Simulates the full sequence of real browser events so Testing Library tests behave the way an actual user does.
Storybook
The industry-standard workshop for building, documenting, and testing UI components in isolation, across every major frontend framework.
DOM Testing Library
Simple, framework-agnostic DOM query utilities that test your UI the way real users interact with it.
Faker
Generate massive amounts of realistic fake data for testing, seeding, and mocking in JavaScript and TypeScript.
mocha
The classic, battle-tested JavaScript test framework for Node.js and the browser, built around flexible async testing and pluggable reporters.
Chai
BDD/TDD assertion library for Node.js and the browser, framework-agnostic
jest-junit
A Jest reporter that converts test results into JUnit-compatible XML for CI dashboards and test-analytics tools.
deep-equal
A standalone port of Node's own assert.deepEqual algorithm, giving spec-accurate deep equality checks in Node and the browser alike.
chrome-remote-interface
A Node.js client for the Chrome DevTools Protocol, exposing every browser command, event, and type as a plain JavaScript API.
@sinonjs/fake-timers
Deterministic fake implementations of setTimeout, setInterval, Date, and other timer APIs for fast, reliable JavaScript tests.
memlab
Meta's end-to-end framework for finding JavaScript memory leaks and analyzing heap snapshots
user-agents
A JavaScript library that generates realistic, frequency-weighted random user agents and browser fingerprints from a dataset refreshed daily.
Cucumber Expressions
A human-readable alternative to regular expressions for matching Gherkin step text
memory-level
In-memory abstract-level database for Node.js and browsers, backed by a fully persistent red-black tree.
tag-expressions
A small boolean-expression parser and evaluator for selecting Gherkin scenarios by tag, used by behave and other Cucumber-family test runners.