Locating regression bugs

  • Authors:
  • Dor Nir;Shmuel Tyszberowicz;Amiram Yehudai

  • Affiliations:
  • Tel-Aviv University;The Academic College Tel-Aviv Yaffo;Tel-Aviv University

  • Venue:
  • HVC'07 Proceedings of the 3rd international Haifa verification conference on Hardware and software: verification and testing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

A regression bug is a bug which causes a feature that worked correctly to stop working after a certain event (system upgrade, system patching, daylight saving time switch, etc.). Very often an encompassed bug fix included in a patch causes the regression bug. Regression bugs are an annoying and painful phenomena in the software development process, requiring a great deal of effort to find. Many tools have been developed in order to find the existence of such bugs. However, a great deal of manual work is still needed to find the exact source-code location that caused a regression bug. In this paper we present the CodePsychologist, a tool which assists the programmer to locate source code segments that caused a given regression bug. The CodePsychologist goes beyond current tools, that identify all the lines of code that changed since the feature in question worked properly (with the help of a Source Control Tool). The CodePsychologist uses various heuristics to select the lines most likely to be the cause of the error, from these often large number of lines of code. This reduces the fixing time of regression bugs. It allows a quick response to field errors that need an immediate correction.