fast-check
fast-check: A deep, runner-agnostic testing library for JavaScript and TypeScript teams. Ranked #1 of 27 in Property-Based Testing Tools by our editors (9.4/10); pricing: Open source; best for javaScript and TypeScript teams.
At a glance
- Editor score9.4 / 10
- PricingOpen source
- Best forJavaScript and TypeScript teams
- Free planYes
- Paid fromFree
- Supported languagesJavaScript, TypeScript
- Facts checked20 Sep 2026

Where it wins
- Shrinks failures and supports deterministic replay with seeds and paths
- Supports stateful, asynchronous, fuzzing, and scheduler-based testing
- Integrates with Jest, Mocha, Vitest, Ava, Bun, Deno, and Node.js
Where it doesn't
- Its scope is limited to JavaScript and TypeScript
- Advanced stateful and scheduler workflows require thoughtful test design
- It does not provide AI-assisted testing features
Our verdict on fast-check
fast-check is an open-source property-based testing library for JavaScript and TypeScript. It generates inputs, runs properties repeatedly, and reduces failing inputs to smaller cases that are easier to investigate. The library suits teams testing application logic, APIs, data transformations, and other behavior where example-based tests may not cover enough input variation. Its test-runner-agnostic design also makes it a fit for projects using Jest, Mocha, Vitest, Ava, Bun, Deno, or the Node.js test runner.
Its strongest advantage is feature depth within property-based testing. Generated input arbitraries cover input creation, while shrinking helps isolate failure cases. Seeded deterministic replay supports repeatable debugging through seeds and paths. Teams can also model stateful behavior with commands, test synchronous and asynchronous properties, build fuzzing workflows, and examine timing-sensitive behavior with scheduler-based race-condition testing. These capabilities make fast-check suitable for more than straightforward input generation, particularly when correctness depends on sequences of actions or asynchronous scheduling.
fast-check has an open-source model and a free plan, with a documented default of 100 generated runs. The main trade-off is focus: it supports JavaScript and TypeScript rather than a broader set of programming languages, and its more advanced workflows require teams to express behavior as properties, commands, or scheduled operations. Choose it when your team wants shrinking, reproducible failures, stateful testing, and broad test-runner integration in the JavaScript ecosystem. Consider another tool when you need support outside JavaScript and TypeScript or want AI-assisted testing features.
Questions about fast-check
What does fast-check run on? Web. It runs self-hosted.
What does fast-check integrate with? 7 integrations, including Jest, Mocha, Vitest, Ava and Bun test runner.
Who is fast-check built for? Solo users, small businesses, mid-market companies and enterprises (our editorial estimate).
Your product? Our editors can test fast-check in depth and publish a review, labelled as paid · from $149/mo →
fast-check pricing
fast-check fact sheet
| Free plan | Yes |
|---|---|
| Paid from | Free |
| Supported languages | JavaScript, TypeScript |
| Test runner support | Jest, Mocha, Vitest, Ava, Bun, Deno, Node.js test runner |
| Failing-case shrinking | Yes |
| Stateful testing | Yes |
| Reproducible failures | Yes |
| Cases per run | Not verified |
| Deployment | Self-hosted |
| Platforms | Web |
| Support | Docs, Community |
| Built for | Solo, Small business, Mid-market, Enterprise (editorial estimate) |
| Integrations | 7 integrations: Jest, Mocha, Vitest, Ava, Bun test runner, Deno test runner … See all → |
| Pricing | Open source |
| Website | fast-check.dev |
| Facts checked | 20 Sep 2026 |
fast-check integrations
fast-check lists 7 integrations on its own site.
- Jest
- Mocha
- Vitest
- Ava
- Bun test runner
- Deno test runner
- Node.js test runner
See all fast-check integrations →
Alternatives to fast-check
- HypothesisA focused Python library for generated inputs, shrinking, and stateful tests.9.3
- ProptestA focused Rust framework for generated inputs, shrinking, replay, and stateful tests.9.1
- RapidCheckA focused C++ framework for finding, shrinking, and reproducing counterexamples.9.0
See all fast-check alternatives →
fast-check vs the competition
- fast-check vs Hypothesis
- fast-check vs Proptest
- fast-check vs RapidCheck
- fast-check vs CsCheck
- fast-check vs Scala Hedgehog
- fast-check vs PropEr
Compare fast-check with any tool side by side →
Used fast-check? Be the first to review it
The editor score above is our own research. What this page doesn't have yet is a reader's view — what you used fast-check for, what worked and what didn't. No stars are seeded and no review is paid for; an editor reads every one before it appears.
Write a reviewTwo minutes · verified accounts only · read by an editor before it appears
Featured on iTechGuides
fast-check is listed in our Property-Based Testing Tools directory. Add the badge to your site — it links back to this page.
<a href="https://www.itechguides.com/products/fast-check/"><img src="https://www.itechguides.com/best/badge/fast-check.svg" alt="Featured on iTechGuides" width="230" height="46"></a>
Reviewed by iTechGuides Editors · Editorial team · Updated Nov 2026
Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.
Last updated · How we research and update



