with Herbert Kuchen
- PPDP ‘07: Proceedings of the 9th ACM SIGPLAN International Symposium on Principles and Practice of Declarative Programming © ACM Press
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
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.