with Herbert Kuchen

  • PPDP ‘07: Proceedings of the 9th ACM SIGPLAN International Symposium on Principles and Practice of Declarative Programming © ACM Press
  • pdf
  • slides
  • bib

We employ the narrowing-based execution mechanism of the functional
logic programming language Curry in order to automatically generate
a system of test cases for glass-box testing of Curry programs.

The test cases for a given function are computed by
narrowing a call to that function with initially uninstantiated
arguments.

The generated test cases are produced w.r.t. a selected
code-coverage criterion such as control-flow coverage.

Besides an adaption of the notion of control-flow coverage to
functional (logic) programming, we present a novel coverage
criterion for this programming paradigm. A particular difficulty
of the adaption is the handling of laziness.