School of Computing

Testing Erlang Refactorings with QuickCheck

Huiqing Li and Simon Thompson

In the 19th International Symposium on Implementation and Application of Functional Languages, IFL 2007, LNCS, pages 182-196, Freiburg, Germany, September 2007.

Abstract

Refactoring is a technique for improving the design of existing programs without changing their behaviour. Wrangler is a tool built at the University of Kent to support Erlang program refactoring; the Wrangler tool is written in Erlang.

In this paper we present the use of a novel testing tool, Quviq QuickCheck, for testing the implementation of Wrangler. QuickCheck is a specification-based testing tool for Erlang. With QuickCheck, programs are tested by writing properties in a restricted logic, and using the tool these properties are tested in randomly generated test cases.

This paper first gives overviews of Wrangler and Quviq QuickCheck, then discusses the various ways in which refactorings can be validated, and finally shows how QuickCheck can be used to test the correctness of refactorings in an efficient way.

Download publication 248 kbytes

Bibtex Record

@inproceedings{2648,
author = {Huiqing Li and Simon Thompson},
title = {{T}esting {E}rlang {R}efactorings with {Q}uick{C}heck},
month = {September},
year = {2007},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2007/2648},
    publication_type = {inproceedings},
    submission_id = {15469_1204021254},
    booktitle = {the 19th International Symposium on Implementation and Application of Functional Languages, IFL 2007, LNCS},
    address = {Freiburg, Germany},
    refereed = {yes},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014