Selecting Software Test Data Using Data Flow Information
IEEE Transactions on Software Engineering
Proceedings of the 29th annual ACM/IEEE international symposium on Microarchitecture
Efficient coverage testing using global dominator graphs
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Demand-driven structural testing with dynamic instrumentation
Proceedings of the 27th international conference on Software engineering
Efficient online computation of statement coverage
Journal of Systems and Software
Efficiently monitoring data-flow test coverage
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
An efficient method to generate feasible paths for basis path testing
Information Processing Letters
Lightweight fault-localization using multiple coverage types
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Sampling-based program execution monitoring
Proceedings of the ACM SIGPLAN/SIGBED 2010 conference on Languages, compilers, and tools for embedded systems
Exploiting hardware advances for software testing and debugging (NIER track)
Proceedings of the 33rd International Conference on Software Engineering
Hi-index | 0.89 |
Data-flow (DF) testing was introduced to achieve more comprehensive structural evaluation of programs. It requires tests that traverse a path in which the definition of a variable and its subsequent use, i.e., a definition-use association (dua), is exercised. However, DF testing has rarely been adopted in industry because it is considered too costly by practitioners. A factor precluding broad adoption of DF testing is the cost of tracking duas exercised by tests. Previous approaches rely on complex computations and expensive data structures to collect dua coverage. We present an algorithm which utilizes efficient bitwise operations and inexpensive data structures to track intra-procedural duas. RAM memory requirements are restricted to three bit vectors the size of the number of duas. Conservative simulations indicate that the new algorithm imposes less execution slowdown.