Litcius/Paper detail

Property-Based Testing in Practice

Harrison Goldstein, Joseph W. Cutler, Daniel Dickstein, Benjamin C. Pierce, Andrew Head

202422 citationsDOIOpen Access PDF

Abstract

Property-based testing (PBT) is a testing methodology where users write executable formal specifications of software components and an automated harness checks these specifications against many automatically generated inputs. From its roots in the QuickCheck library in Haskell, PBT has made significant inroads in mainstream languages and industrial practice at companies such as Amazon, Volvo, and Stripe. As PBT extends its reach, it is important to understand how developers are using it in practice, where they see its strengths and weaknesses, and what innovations are needed to make it more effective.

Topics & Concepts

HaskellComputer scienceSoftware engineeringExecutableProperty (philosophy)Programming languageMainstreamStrengths and weaknessesSoftwareFunctional programmingPhilosophyTheologyEpistemologySoftware Testing and Debugging TechniquesAdvanced Malware Detection TechniquesSoftware Reliability and Analysis Research