Quantifying the effectiveness of testing via efficient residual path profiling

  • Authors:
  • Trishul M. Chilimbi;Aditya V. Nori;Kapil Vaswani

  • Affiliations:
  • Microsoft Research Redmond;Microsoft Research Redmond;Indian Institute of Science, Bangalore

  • Venue:
  • The 6th Joint Meeting on European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering: companion papers
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software testing is extensively used for uncovering bugs in large, complex software. Testing relies on well designed regression test suites that anticipate all reasonable software usage scenarios. Unfortunately, testers today have no way of knowing how much of real-world software usage was untested by their regression suite. Recent advances in low-overhead path profiling provide the opportunity to rectify this deficiency and perform residual path profiling on deployed software. Residual path profiling identifies all paths executed by deployed software that were untested during software development. We extend prior research to perform low-overhead interprocedural path profiling. We demonstrate experimentally that low-overhead path profiling, both intraprocedural and interprocedural, provides valuable quantitative information on testing effectiveness. We also show that residual edge profiling is inadequate as a significant number of untested paths include no new untested edges.