i-nth logo

Authors

Robin Abraham & Martin Erwig

Abstract

We present an error-detection and -correction approach for spreadsheets that automatically generates questions about input/output pairs and, depending on the feedback given by the user, proposes changes to the spreadsheet that would correct detected errors.

This approach combines and integrates previous work on automatic test-case generation and goal-directed debugging.

We have implemented this method as an extension to MS Excel. We carried out an evaluation of the system using spreadsheets seeded with faults using mutation operators.

The evaluation shows among other things that up to 93% of the first-order mutants and 98% of the second-order mutants were detected by the system using the automatically generated test cases.

Sample

Evaluation setup
Evaluation setup

We evaluated the test-driven debugging framework under the following three configurations:

  • GoalDebug only: Involves testing each of the spreadsheet formulas with a single set of input values, and triggering change suggestions from the cells in which failures are observed.
  • Test-driven debugging: The spreadsheet is tested with a test suite that satisfies 100% du-adequacy. The test suite is generated from the first solvable constraint set for each feasible du pair.
  • Test-driven debugging: AutoTest picks a solvable constraint set at random from those available for each feasible du pair. As in the previous configuration, the spreadsheet is tested with a test suite that satisfies 100% du adequacy in this case as well.

Publication

2008, IEEE Symposium on Visual Languages and Human-Centric Computing, September, pages 131-138

Full article

Test-driven goal-directed debugging in spreadsheets