Side by side
fast-check vs FsCheck
Both stand on property-based testing tools. Which one you can start free with, which one lets you read the code, and what each costs once you pay.
Free plan Open source APILinuxSelf-hosted+1
fast-check offers a configurable property-based testing workflow with failure shrinking and broad test-runner support. Its version 5.x runtime requirements may affect adoption in older environments.
Visit fast-check Free plan LinuxMacWindows
Choose FsCheck if you want a free, BSD-licensed library for property-based checks in .NET and need generated inputs with minimized failure examples. Look elsewhere if you depend on the experimental stateful API’s compatibility guarantees or need the documented exception-expectation function from C#.
Visit FsCheckThe facts
| fast-check | FsCheck | |
|---|---|---|
| Free plan | Yes | Yes |
| Open source | Yes | Not published |
| Runs on | API, Linux, Self-hosted, Web | Linux, Mac, Windows |
| Lowest paid plan | Free or on request | Free or on request |
| Plans published | 1 | 1 |
| Maker | Not published | Not published |
| Website | fast-check.dev | fscheck.github.io |
| On property-based testing tools | #1 of 28 | #2 of 28 |
fast-check: what it does well
- Free and released under the MIT license
- Works with several test runners
- Shrinks failing inputs to counterexamples
- Supports seeds and reproducible failures
What to know first
- Version 5.x requires Node.js 22.12.0 or later
- Version 5.x requires ECMAScript 2025
FsCheck: what it does well
- Checks properties using randomly generated inputs.
- Supports properties written in F#, C# and VB.
- Shrinks failures to minimal counterexamples.
- Allows custom generators and shrinkers grouped as Arbitrary instances.
- Supports parameterized cases and parallel execution.
What to know first
- The documentation covers version 2.x and is described as outdated and incomplete.
- Experimental stateful testing has no semantic-versioning guarantees.
- Properties cannot have generic types.
- The documented exception-expectation function is unavailable in the C# API.
Alternatives to fast-check Alternatives to FsCheck The whole list
