QuickCheck, our testing tool for automatically generating tests, has a long track record of nailing serious and hard-to-find bugs and boosting quality, in software like dets (part of mnesia), Riak, and the embedded software in cars. QuickCheck is written in Erlang and can be used with Elixir, but... can we instrument Elixir code to find race-conditions with PULSE? Not until recently. Now we have an Elixir native interface to access QuickCheck. In this talk, we present QuickCheck and this interface and show how race-conditions can be nailed down.
Target audience: Elixir developers
Thomas Arts, co-founder and CTO of Quviq, has worked at Ericsson's computer Science Lab in the nineties. Together with Joe Armstrong, Simon Marlow and Phil Wadler, he tried to build a type system for Erlang. That being of little practical use, he later worked on verification tools for Erlang. After a short return to academia as professor at Chalmers, he is now fully devoted to amzing testing tools.
Quviq is the company that produced QuickCheck, a tool that automatically generates tests. The tool is written in Erlang, but can be used to test systems written in a variety of languages. Among other successes, it is heavily used within the telecom and automotive industry, for example for testing 5G base stations and AUTOSAR standard software.