Prioritize code for testing to improve code coverage of complex software

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

20 Scopus citations

Abstract

Code prioritization for testing promises to achieve the maximum testing coverage with the least cost. This paper presents an innovative method to provide hints on which part of code should be tested first to achieve best code coverage. This method claims two major contributions. First it takes into account a "global view" of the execution of a program being tested, by considering the impact of calling relationship among methods/functions of complex software. It then relaxes the "guaranteed" condition of traditional dominator analysis to be "at least" relationship among dominating nodes, which makes dominator calculation much simpler without losing its accuracy. It also then expands this modified dominator analysis to include global impact of code coverage, i.e. the coverage of the entire software other than just the current function. We implemented two versions of code prioritization methods, one based on original dominator analysis and the other on relaxed dominator analysis with global view. Our comparison study shows that the latter is consistently better in terms of identifying code for testing to increase code coverage.

Original languageEnglish
Title of host publicationProceedings - 16th IEEE International Symposium on Software Reliability Engineering, ISSRE 2005
Pages75-84
Number of pages10
DOIs
StatePublished - 2005
Event16th IEEE International Symposium on Software Reliability Engineering, ISSRE 2005 - Chicago, IL, United States
Duration: 8 Nov 200511 Nov 2005

Publication series

NameProceedings - International Symposium on Software Reliability Engineering, ISSRE
Volume2005
ISSN (Print)1071-9458

Conference

Conference16th IEEE International Symposium on Software Reliability Engineering, ISSRE 2005
Country/TerritoryUnited States
CityChicago, IL
Period8/11/0511/11/05

Keywords

  • Code coverage
  • Coverage priority
  • Dominator analysis
  • Testing

Fingerprint

Dive into the research topics of 'Prioritize code for testing to improve code coverage of complex software'. Together they form a unique fingerprint.

Cite this