FsCheck 2.10.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.

No packages depend on FsCheck.

Update FsCheck.NUnit to work with NUnit 3.8.1. FsCheck.NUnit is not backwards compatible with earlier NUnit versions because NUnit changed the name of a few methods in their extension API. Gen.listOf and Gen.arrayOf now divide the size among the element generators, to avoid exponential explosion of size when high-dimensional types like int list list list are generated. This is the approach advocated in https://gupea.ub.gu.se/handle/2077/22087. The effect on list and array generators is as follows, quoting from that text: This adjustment of the list generator impacts the distribution in several ways. Most apparently it inverts the correlation between the length of the list and the size of the elements, long lists will tend to have small elements instead of large. Short lists with small elements will be generated whenever n is low. Short lists with large elements will occur when n is large and a small k is chosen. If a large k is chosen instead, long list with small elements will be generated. The only way to generate long lists with large elements is if n is very large, which is natural given that the purpose of the modified algorithm is to reduce the size of test data. Add Gen.piles generator, which generates a list of random elements that add up to a given sum.

Any 0.0

.NET Standard 1.6

Version Downloads Last updated
3.3.3 2 05/26/2026
3.3.2 2 05/26/2026
3.3.1 2 05/26/2026
3.3.0 2 05/26/2026
3.2.0 2 05/26/2026
3.1.0 2 05/26/2026
3.0.1 2 05/26/2026
3.0.0 2 05/26/2026
3.0.0-rc3 2 05/26/2026
3.0.0-rc2 2 05/26/2026
3.0.0-rc1 2 05/26/2026
3.0.0-beta2 2 05/26/2026
3.0.0-beta1 2 05/26/2026
3.0.0-alpha5 2 05/26/2026
3.0.0-alpha4 2 05/26/2026
3.0.0-alpha3 2 05/26/2026
3.0.0-alpha2 2 05/26/2026
3.0.0-alpha1 2 05/26/2026
2.16.6 3 05/25/2026
2.16.5 2 05/26/2026
2.16.4 2 05/26/2026
2.16.3 2 05/26/2026
2.16.2 2 05/26/2026
2.16.0 2 05/26/2026
2.15.3 2 05/26/2026
2.15.2 2 05/26/2026
2.15.1 2 05/26/2026
2.15.0 2 05/26/2026
2.14.6 2 05/26/2026
2.14.5 2 05/26/2026
2.14.4 2 05/26/2026
2.14.3 2 05/26/2026
2.14.2 2 05/26/2026
2.14.0 2 05/26/2026
2.13.0 2 05/26/2026
2.12.1 2 05/26/2026
2.12.0 2 05/26/2026
2.11.0 2 05/26/2026
2.10.10 2 05/26/2026
2.10.9 2 05/26/2026
2.10.8 2 05/26/2026
2.10.7 2 05/26/2026
2.10.6 2 05/26/2026
2.10.5 2 05/26/2026
2.10.4 2 05/26/2026
2.10.3 2 05/26/2026
2.10.2 2 05/26/2026
2.10.1 2 05/26/2026
2.10.0 2 05/26/2026
2.9.2 2 05/26/2026
2.9.1 2 05/26/2026
2.9.0 2 05/26/2026
2.9.0-rc3 2 05/26/2026
2.9.0-rc2 2 05/26/2026
2.9.0-rc1 2 05/26/2026
2.8.2 2 05/26/2026
2.8.1 1 05/26/2026
2.8.0 2 05/26/2026
2.7.2 2 05/26/2026
2.7.1 2 05/26/2026
2.7.0 2 05/26/2026
2.6.3 2 05/26/2026
2.6.2 2 05/26/2026
2.6.1 2 05/26/2026
2.6.0 2 05/26/2026
2.5.0 2 05/26/2026
2.4.0 2 05/26/2026
2.3.0 2 05/26/2026
2.2.5 2 05/26/2026
2.2.4 2 05/26/2026
2.2.3 2 05/26/2026
2.2.2 2 05/26/2026
2.2.1 2 05/26/2026
2.2.0 2 05/26/2026
2.1.0 2 05/26/2026
2.0.7 2 05/26/2026
2.0.6 2 05/26/2026
2.0.5 2 05/26/2026
2.0.4 2 05/26/2026
2.0.3 2 05/26/2026
2.0.2 2 05/26/2026
2.0.1 2 05/26/2026
2.0.1-rc1 2 05/26/2026
2.0.0-alpha 2 05/26/2026
1.0.4 2 05/26/2026
1.0.3 2 05/26/2026
1.0.2 2 05/26/2026
1.0.1 2 05/26/2026
1.0.0 2 05/26/2026
0.9.4 2 05/26/2026
0.9.3 2 05/26/2026
0.9.2 2 05/26/2026
0.9.1 2 05/26/2026
0.9.0.1 2 05/26/2026
0.9.0 2 05/26/2026
0.8.3 2 05/26/2026
0.8.2 2 05/26/2026
0.8.1 2 05/26/2026
0.7.1 2 05/26/2026