2009
DOI: 10.1007/978-3-642-00515-2_6
|View full text |Cite
|
Sign up to set email alerts
|

Automatic Generation of Test Inputs for Mercury

Abstract: In this work, we consider the automatic generation of test inputs for Mercury programs. We use an abstract representation of a program that allows to reason about program executions as paths in a control-flow graph. Next, we define how such a path corresponds to a set of constraints whose solution defines input values for the predicate under test such that when the predicate is called with respect to these input values, the execution is guaranteed to follow the given path. The approach is similar to existing w… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
5

Citation Types

0
21
0

Year Published

2010
2010
2015
2015

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 7 publications
(21 citation statements)
references
References 12 publications
0
21
0
Order By: Relevance
“…Arguably the most commonly applied strategy for finding errors and thus producing (more) reliable software is testing: running a software component with respect to a wellchosen set of inputs and comparing the outputs that are produced with the expected results in order to find errors. In previous work [4], we have developed a technique that allows to automatically generate a set of test inputs for a given program written in the logic programming language Mercury. The basic idea of that technique, itself inspired by [20], is as follows: first, a path through the control-flow graph of a predicate is transformed into a set of constraints on the (input) variables of the predicate such that when the predicate is called with input values satisfying these constraints, its execution is guaranteed to follow the given path.…”
Section: Introductionmentioning
confidence: 99%
See 3 more Smart Citations
“…Arguably the most commonly applied strategy for finding errors and thus producing (more) reliable software is testing: running a software component with respect to a wellchosen set of inputs and comparing the outputs that are produced with the expected results in order to find errors. In previous work [4], we have developed a technique that allows to automatically generate a set of test inputs for a given program written in the logic programming language Mercury. The basic idea of that technique, itself inspired by [20], is as follows: first, a path through the control-flow graph of a predicate is transformed into a set of constraints on the (input) variables of the predicate such that when the predicate is called with input values satisfying these constraints, its execution is guaranteed to follow the given path.…”
Section: Introductionmentioning
confidence: 99%
“…In the current paper, we generalize and extend the approach of [4], reformulating it completely within the framework of constraint programming (CP). This presents several advantages over [4] and similar proposals:…”
Section: Introductionmentioning
confidence: 99%
See 2 more Smart Citations
“…Other recent works [2] use RQP (Reverse Query Processing) to generate different database instances for a given query and a result of that query. In [6] the problem…”
Section: Introductionmentioning
confidence: 99%