Chapter 11. Property-based and concurrency testing

This chapter covers

  • Property-based testing with QuickCheck
  • Detecting concurrency errors with Concuerror

In this final chapter (hurray!), we’ll continue our survey of some of the testing tools that are available. Chapter 10 introduced Dialyzer and type specifications. But the Erlang ecosystem has much more to offer, as the following sections will demonstrate.

First, there’s QuickCheck, a property-based testing tool. Property-based testing turns unit testing on its head. Instead of writing specific test cases, as with traditional unit testing, property-based testing forces you to express test cases in terms of general specifications. Once you have these specifications in place, the tool can ...

Get The Little Elixir & OTP Guidebook now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.