Presentation: FsCheck: For Each Function, There Exist Properties to be Checked

Location:

Day of week:

9:00am - 9:50am

Love it or Loathe it, testing is an unavoidable aspect of developing high-quality software. But there's a world of difference between well-tested code and simply writing tests. Very often, the difference boils down to how you assess the "correctness" of your code. By focusing on software as a mapping from inputs to outputs, property-based testing offers a powerful methodology for testing the logical invariants a piece of code should always uphold, regardless of implementation details.

In this session we'll look at FsCheck, a powerful library for doing property-based testing and sophisticated data generation in the CLR ecosystem. In addition to the basic features of the library, attendees will learn about identifying common patterns and building specifications from collections of properties. We'll also explore how FsCheck can be used to refine domain models and integrate with other popular testing tools. Finally, real-world examples will highlight both the strengths and weaknesses of this approach to software craftsmanship. While no prior knowledge is assumed, familiarity with the CLR (.NET or Mono) will be helpful.

Tracks

Wednesday Jun 10

Thursday Jun 11

Friday Jun 12

Conference for Professional Software Developers