# fscheck/FsCheck

Random Testing for .NET

Repository: https://github.com/fscheck/FsCheck
Canonical: https://ross.abutalabs.com/products/fscheck
Homepage: https://fscheck.github.io/FsCheck/
Language: F#
License: BSD-3-Clause
License Family: permissive
Topics: fscheck, quickcheck, fsharp, csharp, testing
Last push: 2026-08-20T17:35:13+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 98, release rhythm 86, longevity 100
- inputs: {"age_days": 4823, "days_push": 13, "days_rel": 13, "gap_med": 69, "n_releases_24m": 10}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1245, forks 163 (observed 2026-08-28T04:04:06.951120+00:00)

## What it is
FsCheck is a property-based testing library for .NET, ported from Haskell's QuickCheck. Programmers specify properties that functions should satisfy, and FsCheck tests them against many randomly generated inputs, automatically shrinking failing cases to minimal counter-examples.

## Use cases
- generate random test data for .NET unit tests
- property-based testing of F# functions
- find minimal counter-examples for failing properties
- integrate property tests with xUnit or NUnit
- model-based testing of stateful systems
- write testable specifications in C# or VB

## When to choose
- you want QuickCheck-style property-based testing on .NET
- you need automatic shrinking of failing test cases
- you use F#, C#, or VB and want random test data generation
- you want property tests inside existing test frameworks like xUnit or NUnit

## When to avoid
- you only need simple example-based unit tests
- your project is not on the .NET platform
- you need fuzzing of raw binary inputs or security-oriented fuzzing rather than property testing

## Facets
- artifact type: library
- maturity: active
- function: testing, fuzzing, data-generation
- domain: testing, developer-tools, programming-languages
- platform: dotnet, cross-platform
- tags: property-based-testing, quickcheck, fsharp, csharp, shrinker, generators, xunit, nunit

## Member repositories
- fscheck/FsCheck (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:06.951120+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T05:08:09.796724+00:00, confidence not recorded.
  - readme: https://github.com/fscheck/FsCheck (fetched 2026-08-28T04:04:06.951120+00:00, sha fc9d1ce46e0b)
  - homepage: https://fscheck.github.io/FsCheck/ (fetched 2026-08-29T12:19:31.573742+00:00, sha a8016bf0984c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
