FsCheck 2.14.0

FsCheck is a tool for testing .NET programs automatically. You provide a specification of the program, in the form of properties which functions, methods or objects should satisfy, and FsCheck then tests that the properties hold in a large number of randomly generated cases. Such properties are actually a testable specification of your program.

Properties are written in F#, C# or VB. FsCheck helps you to define properties, observe the distribution of test data, and define test data generators. Crucially, when a property fails, FsCheck automatically displays a minimal counter example.

There is a newer prerelease version of this package available.
See the version list below for details.
Install-Package FsCheck -Version 2.14.0
dotnet add package FsCheck --version 2.14.0
<PackageReference Include="FsCheck" Version="2.14.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FsCheck --version 2.14.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

Add shrinker for data transfer objects. (by Carlo Zancanaro)
Add shrinker for Interval type. (by Nazar Vinnichuk)
Add shrinker for flags enums.  (by Nazar Vinnichuk)
Add new Arbitrary instances for Numerics.Complex and ConsoleKeyInfo. (by Nazar Vinnichuk)
Fix float, int32 and int64 generators so their distribution is uniform. This also improves downstream generators. (by Nazar Vinnichuk)
Fix decimal generator so size is respected. (by Nazar Vinnichuk)
Add Gen.scale and ScaleSize extension method which can remove some boilerplate. (by Nazar Vinnichuk)

Showing the top 10 GitHub repositories that depend on FsCheck:

Repository Stars
akkadotnet/akka.net
Port of Akka actors for .NET
AutoFixture/AutoFixture
AutoFixture is an open source library for .NET designed to minimize the 'Arrange' phase of your unit tests in order to maximize maintainability. Its primary goal is to allow developers to focus on what is being tested rather than how to setup the test scenario, by making it easier to create object graphs containing test data.
commandlineparser/commandline
The best C# command line parser that brings standardized *nix getopt style, for .NET. Includes F# support
MetacoSA/NBitcoin
Comprehensive Bitcoin library for the .NET framework.
NeutroniumCore/Neutronium
🚀 Build .NET desktop applications using HTML, CSS and javascript.
helios-io/helios
reactive socket middleware for .NET
SonarSource/sonar-dotnet
Code analyzer for C# and VB.NET projects https://redirect.sonarsource.com/plugins/vbnet.html
la-yumba/functional-csharp-code
Code samples for Functional Programming in C#
viciousviper/DokanCloudFS
A virtual filesystem for various publicly accessible Cloud storage services on the Microsoft Windows platform.
exercism/csharp
Exercism exercises in C#.

Version History

Version Downloads Last updated
3.0.0-alpha4 40,424 10/6/2018
3.0.0-alpha3 60,196 12/30/2017
3.0.0-alpha2 6,448 10/19/2017
3.0.0-alpha1 1,647 9/26/2017
2.14.0 93,187 4/17/2019
2.13.0 127,281 11/11/2018
2.12.1 16,819 10/18/2018
2.12.0 7,142 10/6/2018
2.11.0 74,470 6/15/2018
2.10.10 60,677 5/15/2018
2.10.9 43,350 4/10/2018
2.10.8 61,967 3/3/2018
2.10.7 14,700 1/29/2018
2.10.6 13,055 12/30/2017
2.10.5 6,852 12/28/2017
2.10.4 57,878 11/8/2017
2.10.3 9,784 9/26/2017
2.10.2 9,679 9/25/2017
2.10.1 1,689 9/23/2017
2.10.0 14,020 9/7/2017
2.9.2 8,611 8/28/2017
2.9.1 1,248 8/27/2017
2.9.0 81,270 5/18/2017
2.9.0-rc3 4,250 5/7/2017
2.9.0-rc2 1,100 5/6/2017
2.9.0-rc1 1,079 5/6/2017
2.8.2 6,528 5/6/2017
2.8.1 1,587 5/1/2017
2.8.0 16,054 3/15/2017
2.7.2 7,544 3/5/2017
2.7.1 9,958 2/13/2017
2.7.0 8,778 1/15/2017
2.6.3 1,279 1/13/2017
2.6.2 87,016 10/7/2016
2.6.1 5,447 9/25/2016
2.6.0 37,374 8/3/2016
2.5.0 36,480 6/7/2016
2.4.0 12,596 4/20/2016
2.3.0 3,406 4/11/2016
2.2.5 4,162 3/28/2016
2.2.4 20,332 12/17/2015
2.2.3 3,760 11/26/2015
2.2.2 3,737 11/14/2015
2.2.1 1,908 11/5/2015
2.2.0 9,091 11/1/2015
2.1.0 9,339 9/30/2015
2.0.7 13,004 8/20/2015
2.0.6 1,572 8/14/2015
2.0.5 10,317 7/31/2015
2.0.4 4,367 7/20/2015
2.0.3 28,746 7/10/2015
2.0.2 1,291 7/7/2015
2.0.1 8,055 5/23/2015
2.0.1-rc1 1,176 5/23/2015
2.0.0-alpha 1,228 4/27/2015
1.0.4 16,656 12/9/2014
1.0.3 3,217 11/18/2014
1.0.2 2,051 10/27/2014
1.0.1 2,682 10/18/2014
1.0.0 5,522 8/3/2014
0.9.4 26,280 5/24/2014
0.9.3 1,859 5/9/2014
0.9.2 21,366 11/7/2013
0.9.1 4,235 7/2/2013
0.9.0.1 1,366 6/21/2013
0.9.0 1,436 6/18/2013
0.8.3 2,326 8/26/2012
0.8.2 1,474 7/4/2012
0.8.1 1,527 6/25/2012
0.7.1 2,004 5/29/2011