Advanced

Detection or isolation of defects? An experimental comparison of unit testing and code inspection

Runeson, Per LU and Andrews, A. (2003) 14th International Symposium on Software Reliability Engineering In 14th International Symposium on Software Reliability Engineering p.3-13
Abstract
Code inspections and white-box testing have both been used for unit testing. One is a static analysis technique, the other, a dynamic one, since it is based on executing test cases. Naturally, the question arises whether one is superior to the other, or, whether either technique is better suited to detect or isolate certain types of defects. We investigated this question with an experiment with a focus on detection of the defects (failures) and isolation of the underlying sources of the defects (faults). The results indicate that there exist significant differences for some of the effects of using code inspection versus testing. White-box testing is more effective, i.e. detects significantly more defects while inspection isolates the... (More)
Code inspections and white-box testing have both been used for unit testing. One is a static analysis technique, the other, a dynamic one, since it is based on executing test cases. Naturally, the question arises whether one is superior to the other, or, whether either technique is better suited to detect or isolate certain types of defects. We investigated this question with an experiment with a focus on detection of the defects (failures) and isolation of the underlying sources of the defects (faults). The results indicate that there exist significant differences for some of the effects of using code inspection versus testing. White-box testing is more effective, i.e. detects significantly more defects while inspection isolates the underlying source of a larger share of the defects detected. Testers spend significantly more time, hence the difference in efficiency is smaller, and is not statistically significant. The two techniques are also shown to detect and identify different defects, hence motivating the use of a combination of methods (Less)
Please use this url to cite or link to this publication:
author
organization
publishing date
type
Chapter in Book/Report/Conference proceeding
publication status
published
subject
keywords
fault detection, failure detection, defect isolation, defect detection, unit testing, code inspection, white-box testing, static analysis, test case execution, controlled experiment
in
14th International Symposium on Software Reliability Engineering
pages
3 - 13
publisher
IEEE--Institute of Electrical and Electronics Engineers Inc.
conference name
14th International Symposium on Software Reliability Engineering
external identifiers
  • wos:000187552600001
  • scopus:16244396646
ISBN
0-7695-2007-3
DOI
10.1109/ISSRE.2003.1251026
language
English
LU publication?
yes
id
234fc1b9-5346-4c3c-9f8a-12c90c5dacac (old id 612131)
date added to LUP
2007-12-03 09:38:17
date last changed
2017-06-04 04:40:55
@inproceedings{234fc1b9-5346-4c3c-9f8a-12c90c5dacac,
  abstract     = {Code inspections and white-box testing have both been used for unit testing. One is a static analysis technique, the other, a dynamic one, since it is based on executing test cases. Naturally, the question arises whether one is superior to the other, or, whether either technique is better suited to detect or isolate certain types of defects. We investigated this question with an experiment with a focus on detection of the defects (failures) and isolation of the underlying sources of the defects (faults). The results indicate that there exist significant differences for some of the effects of using code inspection versus testing. White-box testing is more effective, i.e. detects significantly more defects while inspection isolates the underlying source of a larger share of the defects detected. Testers spend significantly more time, hence the difference in efficiency is smaller, and is not statistically significant. The two techniques are also shown to detect and identify different defects, hence motivating the use of a combination of methods},
  author       = {Runeson, Per and Andrews, A.},
  booktitle    = {14th International Symposium on Software Reliability Engineering},
  isbn         = {0-7695-2007-3},
  keyword      = {fault detection,failure detection,defect isolation,defect detection,unit testing,code inspection,white-box testing,static analysis,test case execution,controlled experiment},
  language     = {eng},
  pages        = {3--13},
  publisher    = {IEEE--Institute of Electrical and Electronics Engineers Inc.},
  title        = {Detection or isolation of defects? An experimental comparison of unit testing and code inspection},
  url          = {http://dx.doi.org/10.1109/ISSRE.2003.1251026},
  year         = {2003},
}