Susan Potter
talks: Created / Updated

Thinking in Properties (and Beyond), Testing edition

Haskell Love 2020 / August 2020 (it was all a blur) - Online

Abstract

In this talk, we'll explore how property-driven testing allows you to capture the core behavior of your system through properties like idempotence, commutativity, and invariance. We’ll show how to use property-based testing tools (similar to QuickCheck) to generate a wide range of inputs, automatically discovering edge cases that you might miss with traditional testing methods.

You will learn:

  • How to define key properties of your system to guide testing.
  • How property-based testing can give you more input coverage with less code, revealing hidden bugs earlier.
  • Real-world examples where property-driven testing has uncovered issues that would have slipped past typical unit tests.
  • How thinking in properties leads to smarter, more comprehensive test strategies.

By shifting your focus to the fundamental properties of your code, you can build more resilient systems with higher confidence. Whether you're dealing with concurrency, mathematical algorithms, or stateful systems, thinking in properties provides a powerful framework for testing smarter, not harder.

Audience

The intended audience for this talk is functional programmers and testing enthusiasts ready to move beyond basic unit tests and embrace property-based testing for more comprehensive input coverage and smarter bug discovery.

Slides

If you enjoyed this content, please consider sharing this link with a friend, following my GitHub, Twitter/X or LinkedIn accounts, or subscribing to my RSS feed.