Property-Based Testing using F# with Mark Seemann
Ever heard of property-based testing? Carl and Richard talk to Mark Seemann about doing property-based testing with F#. As Mark explains, functional programming techniques work especially well for property-based testing, allowing you to define parameters (properties) that will generate ranges of values to test against. The conversation digs into tooling, specifically FsCheck, an open source library for doing property-based testing in F#. If you'd rather work in C#, Mark's project AutoFixture can do similar work in that language. But Mark talks up the advantages of F# from a functional perspective, creating very terse, easy to read tests. Check it out!
Guests:
Mark Seemann
Mark Seemann helps programmers make code easier to maintain. His professional interests include functional programming, object-oriented development, software architecture, as well as software development in general. Apart from writing a book about Dependency Injection he has also created several Pluralsight courses, videos for Clean Coders, and written numerous articles and blog posts about programming. He's an independent consultant, author, and conference speaker. He lives in Copenhagen, Denmark
Links:
- Symbol Hound http://symbolhound.com/
- Pex http://research.microsoft.com/en-us/projects/pex/
- IntelliTest in Studio 2015 https://www.visualstudio.com/news/vs2015-vs#Testing
- QuickCheck http://www.cse.chalmers.se/~rjmh/QuickCheck/
- fsharp http://fsharp.org/
- FsCheck https://fscheck.github.io/FsCheck/
- Blog Post on FsCheck http://comp-phil.blogspot.ca/2014/05/property-based-testing-with-fscheck.html
- AutoFixture https://github.com/AutoFixture/AutoFixture
- F# Interactive https://msdn.microsoft.com/en-us/library/dd233175.aspx
- Mark Seemann's Pluralsight Course http://www.pluralsight.com/author/mark-seemann