Towards a Better Understanding of Testing if Conditionals
S. K. Nath, Robert Merkel, Man Fai Lau, Tanay Kanti Paul · 2012
Fault based testing is a technique for choosing test cases to reveal certain classes of faults. Due to limited resources and time, testing professionals use their personal experience to (1) "guess" which fault classes are most likely to be present and, then, (2) select appropriate testing methods to reveal such fault classes. The quality of the software depends on whether they can make a good "guess" about the type of faults present and then choose the right testing methods to reveal those faults. However, there is little empirical evidence available in the open literature to support these intuitions. For example, there is no empirical evidence about which types of faults are most commonly made by software developers. By examining the source code changes when faults were fixed in seven open source software artifacts, we propose to classify bug fix patterns into fault classes, and recorded the relative frequencies of those fault classes. This paper reports our findings related to "ifconditional" fixes.