If software quality matters to you, QuickCheck can help you find bugs early. Developers specify properties of your embedded system and QuickCheck then automatically generates and executes test cases. Better testing, less effort:

You can never write a test for every possible bug–and if you try, you will soon encounter diminishing returns. Don’t fall into that trap, let QuickCheck generate your test cases and cover every corner case for you.

…QuickCheck has been used to test mission critical software in the telecommunication, internet devices and automotive industry. Despite large manually crafted test suites, the tests generated by QuickCheck revealed further faults, in time to fix them before they affected customers.

Imagine software that simply may not fail. The video below shows how some Motorola engineers address the problem of testing such demanding systems.

Torben Hoffman & Raghav Karol – Mission Critical with Erlang And QuickCheck: Quality Never Sleeps from Erlang Solutions on Vimeo.


Instead of writing test cases, software developers write a property that should hold for their system. For example, when starting a telephone call with two users, either of them can disconnect, after which the call is terminated. From these properties, test cases are automatically generated and tested against the software. A paradigm shift in testing. The difficulty becomes formulating properties of the system one builds instead of trying to find out how to test it.

QuickCheck can be applied on different test levels: system testing, integration testing and unit testing. For an example of the technology applied to unit test of C software, see our 15 minute demo video.