A SkillsCast for this session is not available.
Perhaps you’ve been hearing a lot about Haskell programmers being absolutely certain that their code is correct but you haven’t taken the leap into day to day Haskell development. Do not despair, there are techniques that can allow you to have confidence in your code without needing to change your development stack. In fact, you can use the same testing techniques Haskellers use without even using a language with a static type checker.
In this session we will be looking at Property Based Testing, and how this approach can allow us to avoid thousands of lines of testing code when ensuring that our code meets specification. Property Based Testing generates inputs based on the properties of the program that we stipulate, and so are based on the business logic, in the same way that types are. Furthermore, if the test fails, a good framework will shrink the problem to the smallest possible data set that gives an error, helping to pinpoint the bug. This session requires no previous knowledge of free-monads, co-products, or other terms you may have grown to hate.
YOU MAY ALSO LIKE:
Property Based Testing : Shrinking Risk In Your Code
Amanda Laucher is currently working with Neo Technology, the company behind Neo4j. She is a language geek who is often found ranting about functional languages and great type systems.