Automatic Testing of Operation Invariance
Authors: | T. Gödderz and J. Voigtländer |
---|---|
Published: | In 23rd International Workshop on Functional and (Constraint) Logic Programming (WFLP'14), Wittenberg, Germany, Proceedings, pages 172-186, volume 1335 of CEUR Workshop Proceedings, September 2014. |
BibTeX: | GV14.bib |
Abstract: | We present an approach to automatically generating operation invariance tests for use with Haskell's random testing framework QuickCheck. The motivation stems from a paper by Holdermans (PPDP'13) which showed how to address certain shortcomings of straightforward testing of implementations of an abstract datatype. While effective, his solution requires extra generation work from the test engineer. Also, it may not even be doable if the person responsible for testing has no knowledge about, and program-level access to, the internals of the concrete datatype implementation under test. We propose and realize a refinement to Holdermans' solution that improves on both aspects: Required operation invariance tests can be formulated even in ignorance of implementation internals, and can be automatically generated using Template Haskell. |
Download: | AutomaticTestingOfOperationInvariance.pdf |
Rights: | Copyright held by the authors. Distribution permitted for private and academic purposes. |
An implementation of the approach discussed in this paper is available here.