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.
tempfile
A secure, cross-platform Rust library for temporary files and directories that clean up automatically on drop.
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
Criterion.rs
Statistics-driven microbenchmarking for Rust that reliably detects performance changes.
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.
similar
A dependency-free Rust diffing library with Myers, Patience, Histogram, and LCS algorithms
libfuzzer-sys
Rust bindings to LLVM's libFuzzer for coverage-guided fuzz testing
Testcontainers for Rust
Integration-test against throwaway Docker containers from within Rust
chrome-remote-interface
A Node.js client for the Chrome DevTools Protocol, exposing every browser command, event, and type as a plain JavaScript API.
enigo
Cross-platform keyboard and mouse input simulation for Rust on Linux, macOS, and Windows.
approx
Approximate floating point equality comparisons and assertions for Rust
@sinonjs/fake-timers
Deterministic fake implementations of setTimeout, setInterval, Date, and other timer APIs for fast, reliable JavaScript tests.
libtest-mimic
Build a custom Rust test harness that looks and behaves like rustc's built-in test runner
memlab
Meta's end-to-end framework for finding JavaScript memory leaks and analyzing heap snapshots
afl.rs
Fuzz-test Rust code with AFLplusplus using the afl crate's fuzz macros and cargo-afl tooling.