Write and run unit tests for JavaScript projects with automatic parallel execution and isolated test environments.
Get clear, syntax-highlighted diffs when tests fail instead of raw assertion output.
Split test files across CI build workers to run your entire test suite faster in continuous integration.
Test async code, Promises, and Observables with built-in support and clean stack traces.
AVA is a test runner for Node.js, a tool that runs automated tests for JavaScript projects. It is designed to be minimal, fast, and focused on reliability. Each test file runs in its own isolated environment (its own thread), which means tests cannot accidentally share state or interfere with each other. Tests also run concurrently by default, making the overall test suite faster than runners that process tests one at a time. One of AVA's signature features is "magic assert", when a test fails, AVA shows a clean, syntax-highlighted diff between what was expected and what was actually produced, making it much easier to understand the failure without digging through raw output. It also cleans up stack traces automatically by removing unrelated internal lines, so errors point more directly to the code you wrote. AVA supports modern JavaScript including async functions, Promises, and Observables, and ships with TypeScript type definitions included. For teams using continuous integration services, AVA can automatically detect whether a CI environment supports parallel builds and splits the test files across build workers so all tests still run but faster. Installation is straightforward via npm or Yarn, and the documentation covers writing tests, snapshot testing, the command line interface, configuration, and various testing recipes for common scenarios like endpoint testing, browser testing, and code coverage.
Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.