Skip to main navigation Skip to search Skip to main content

Property-based testing via proof reconstruction

  • Inria Paris
  • INRIA
  • University of Milano

Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › peer-review

2 Citations (Scopus)

Abstract

Property-based testing (PBT) is a technique for validating code against an executable specification by automatically generating test-data. We present a proof-theoretical reconstruction of this style of testing for relational specifications and employ the Foundational Proof Certificate framework to describe test generators. We do this by presenting certain kinds of "proof outlines" that can be used to describe various common generation strategies in the PBT literature, ranging from random to exhaustive, including their combination. We also address the shrinking of counterexamples as a first step towards their explanation. Once generation is accomplished, the testing phase boils down to a standard logic programming search. After illustrating our techniques on simple, first-order (algebraic) data structures, we lift it to data structures containing bindings using λ-tree syntax. The λProlog programming language is capable of performing both the generation and checking of tests. We validate this approach by tackling benchmarks in the metatheory of programming languages coming from related tools such as PLT-Redex.

Original languageEnglish
Title of host publicationProceedings of the 21st International Symposium on Principles and Practice of Declarative Programming, PPDP 2019
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450372497
DOIs
Publication statusPublished - 7 Oct 2019
Externally publishedYes
Event21st International Symposium on Principles and Practice of Declarative Programming, PPDP 2019 - Porto, Portugal
Duration: 7 Oct 2019 → 9 Oct 2019

Publication series

NameACM International Conference Proceeding Series

Conference

Conference21st International Symposium on Principles and Practice of Declarative Programming, PPDP 2019
Country/TerritoryPortugal
CityPorto
Period7/10/19 → 9/10/19

Fingerprint

Dive into the research topics of 'Property-based testing via proof reconstruction'. Together they form a unique fingerprint.

Cite this