Practical Improvements to the Minimizing Delta Debugging Algorithm

Renáta Hodován, Ákos Kiss

Abstract

The first step in dealing with an input that triggers a fault in a software is simplifying it as much and as automatically as possible, since a minimal test case can ensure the efficient use of human developer resources. The well-known minimizing Delta Debugging algorithm is widely used for automated test case simplification but even its last published revision is more than a decade old. Thus, in this paper, we investigate how it performs nowadays, especially (but not exclusively) focusing on its parallelization potential. We present new improvement ideas, give algorithm variants formally and in pseudo-code, and evaluate them in a large-scale experiment of more than 1000 test minimization sessions featuring real test cases. Our results show that with the help of the proposed improvements, Delta Debugging needs only one-fourth to one-fifth of the original execution time to reach 1-minimal results.

References

  1. Burger, M. and Zeller, A. (2011). Minimizing reproduction of software failures. In 2011 International Symposium on Software Testing and Analysis, pages 221-231.
  2. Hildebrandt, R. and Zeller, A. (2000). Simplifying failureinducing input. In 2000 International Symposium on Software Testing and Analysis, pages 135-145.
  3. Leitner, A., Oriol, M., Zeller, A., Ciupa, I., and Meyer, B. (2007). Efficient unit test case minimization. In22nd International Conference on Automated Software Engineering, pages 417-420.
  4. Misherghi, G. and Su, Z. (2006). HDD: Hierarchical delta debugging. In 28th International Conference on Software Engineering, pages 142-151.
  5. Regehr, J. (2011). Parallelizing delta debugging. http://blog.regehr.org/archives/749.
  6. Takanen, A., DeMott, J., and Miller, C. (2008). Fuzzing for Software Security Testing and Quality Assurance. Artech House.
  7. Zeller, A. (1999). Yesterday, my program worked. Today, it does not. Why? In 7th European Software Engineering Conference/7th International Symposium on Foundations of Software Engineering, pages 253-267.
  8. Zeller, A. and Hildebrandt, R. (2002). Simplifying and isolating failure-inducing input. IEEE Transactions on Software Engineering, 28(2):183-200.
Download


Paper Citation


in Harvard Style

Hodován R. and Kiss Á. (2016). Practical Improvements to the Minimizing Delta Debugging Algorithm . In Proceedings of the 11th International Joint Conference on Software Technologies - Volume 1: ICSOFT-EA, (ICSOFT 2016) ISBN 978-989-758-194-6, pages 241-248. DOI: 10.5220/0005988602410248


in Bibtex Style

@conference{icsoft-ea16,
author={Renáta Hodován and Ákos Kiss},
title={Practical Improvements to the Minimizing Delta Debugging Algorithm},
booktitle={Proceedings of the 11th International Joint Conference on Software Technologies - Volume 1: ICSOFT-EA, (ICSOFT 2016)},
year={2016},
pages={241-248},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005988602410248},
isbn={978-989-758-194-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 11th International Joint Conference on Software Technologies - Volume 1: ICSOFT-EA, (ICSOFT 2016)
TI - Practical Improvements to the Minimizing Delta Debugging Algorithm
SN - 978-989-758-194-6
AU - Hodován R.
AU - Kiss Á.
PY - 2016
SP - 241
EP - 248
DO - 10.5220/0005988602410248