What is FsCheck?
masterFsCheck is an automated testing tool for .NET programs. Instead of writing individual test cases, you provide a specification of your program in the form of properties (rules that functions, methods, or objects must satisfy). FsCheck then attempts to falsify these properties by testing them against a large number of randomly generated cases.
Key features include:
- Property-based testing: Define testable specifications using combinators.
- Automatic Counter-examples: When a property fails, FsCheck automatically finds and displays a minimal counter-example that triggers the failure.
- Generators: Provides combinators to define custom test data generators and observe data distribution.
- Multi-language support: Specifications can be written in F#, C#, or VB.
- Framework Integration: Integrates with NUnit, xUnit, MSTest, and MbUnit. Its generator combinators can also be used independently in any testing framework.