Experiments on the effectiveness of dataflow- and control-flow-based test adequacy criteria
Top Cited Papers
- 17 December 2002
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 02705257,p. 191-200
- https://doi.org/10.1109/icse.1994.296778
Abstract
This paper reports an experimental study investigating the effectiveness of two code-based test adequacy criteria for identifying sets of test cases that detect faults. The all-edges and all-DUs (modified all-uses) coverage criteria were applied to 130 faulty program versions derived from seven moderate size base programs by seeding realistic faults. We generated several thousand test sets for each faulty program and examined the relationship between fault detection and coverage. Within the limited domain of our experiments, test sets achieving coverage levels over 90% usually showed significantly better fault detection than randomly chosen test sets of the same size. In addition, significant improvements in the effectiveness of coverage-based tests usually occurred as coverage increased from 90% to 100%. However the results also indicate that 100% code coverage alone is not a reliable indicator of the effectiveness of a test set. We also found that tests based respectively on control-flow and dataflow criteria are frequency complementary in their effectiveness.Keywords
This publication has 16 references indexed in Scilit:
- A study of the effectiveness of control and data flow testing strategiesJournal of Systems and Software, 1993
- Data flow coverage and the C languagePublished by Association for Computing Machinery (ACM) ,1991
- An experimental comparison of the effectiveness of the all-uses and all-edges adequacy criteriaPublished by Association for Computing Machinery (ACM) ,1991
- Data flow testing in STADJournal of Systems and Software, 1990
- A formal evaluation of data flow path selection criteriaIEEE Transactions on Software Engineering, 1989
- The errors of texSoftware: Practice and Experience, 1989
- The category-partition method for specifying and generating fuctional testsCommunications of the ACM, 1988
- A Data Flow Oriented Program Testing StrategyIEEE Transactions on Software Engineering, 1983
- Reliability of the Path Analysis Testing StrategyIEEE Transactions on Software Engineering, 1976
- An Approach to Program TestingACM Computing Surveys, 1975