CPTEST
We implemented the first testing constraint programs framework shown in a tool called CPTEST
for OPL (Optimization Programming Language). CPTEST is henceforth able to automatically detect, localize and correct faults
in optimized OPL programs.We chose OPL because
it is one of the main programming environments for developing constraint programs and also critical constraint programs . CPTEST is based on ILOG CP
Optimizer 2.1 from ILOG OPL 6.1.1 Development Studio. All our experiments were performed on Intel Core2
Duo CPU 2.40Ghz machine with 2.00 GB of RAM.
CPTEST includes a complete OPL parser and a backend process that produces dedicated OPL programs as output. These OPL programs must be solved
in order to find non-conformities, localize and correct faults. CPTEST includes implementations of Algorithms
one_negated, k_locate and correction. The tool is
parameterized by several options, including the chosen conformity relation, the
instance of the problem, etc. CPTEST handles the overall OPL language and can
negate most of the constraints that can be expressed in OPL. However, it cannot
negate all the global constraints available, such as the cumulative or circuit
global constraint.
FAULT DETECTION
FAULT LOCALIZATION
FAULT CORRECTION