|
ABSTRACT
Evaluation of Code Coverage is the problem of identifying the parts of a program that did not execute in one or more runs of a program. The traditional approach for code coverage tools is to use static code instrumentation. In this paper we present a new approach to dynamically insert and remove instrumentation code to reduce the runtime overhead of code coverage. We also explore the use of dominator tree information to reduce the number of instrumentation points needed. Our experiments show that our approach reduces runtime overhead by 38-90% compared with purecov, a commercial code coverage tool. Our tool is fully automated and available for download from the Internet.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
C-Cover Code Coverage Analyzer for C/C++, . http://www.bullseye.com/ccover.html, Bullseye Testing Technology.
|
| |
2
|
Crashme Benchmark by MySQL Database System, . http://www.mysql.com/information/crash-me.php.
|
| |
3
|
Rational PureCoverage for Unix, . http://www.rational.com/products/purecoverage/index.jtmpl, Rational Software Corporation.
|
| |
4
|
SPEC newsletter, . September 1995, http://www.specbench.org/osg/cpu95/CINT95.
|
| |
5
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
 |
6
|
Hiralal Agrawal, Dominators, super blocks, and program coverage, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.25-34, January 16-19, 1994, Portland, Oregon, United States
[doi> 10.1145/174675.175935]
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
| |
10
|
J. Dean, C. A. Waldspurger, and W. E. Weihl, "Transparent, Low-Overhead Profiling on Modern Processors," Workshop on Profile and Feedback-Directed Compilation. October, Paris, France.
|
| |
11
|
Jeffrey Dean , James E. Hicks , Carl A. Waldspurger , William E. Weihl , George Chrysos, ProfileMe: hardware support for instruction-level profiling on out-of-order processors, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.292-302, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
 |
12
|
|
| |
13
|
|
| |
14
|
R. L. Probert, "Optimal Insertion of Software Probes in Well-Delimited Programs," IEEE Transactions on Software Engineering, January, 1981, pp. 34-42.
|
| |
15
|
|
| |
16
|
W. E. Weihl, CPI: Continous Profiling Infrastructure, DIGITAL Forefront Magazine 1997.
|
CITED BY 15
|
B. Childers , M. L. Soffa , Jonathan Beaver , L. Ber , K. Cammarata , T. Kane , J. Litman , J. Misurda, SoftTest: a framework for software testing of Java programs, Proceedings of the 2003 OOPSLA workshop on eclipse technology eXchange, p.79-83, October 27-27, 2003, Anaheim, California
|
|
Mechelle Gittens , Keri Romanufa , David Godwin , Jason Racicot, All code coverage is not created equal: a case study in prioritized code coverage, Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research, October 16-19, 2006, Toronto, Ontario, Canada
|
|
|
|
Alex Shye , Matthew Iyer , Vijay Janapa Reddi , Daniel A. Connors, Code coverage testing using hardware performance monitoring support, Proceedings of the sixth international symposium on Automated analysis-driven debugging, p.159-163, September 19-21, 2005, Monterey, California, USA
|
|
|
|
|
|
|
Jonathan Misurda , James A. Clause , Juliya L. Reed , Bruce R. Childers , Mary Lou Soffa, Demand-driven structural testing with dynamic instrumentation, Proceedings of the 27th international conference on Software engineering, May 15-21, 2005, St. Louis, MO, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE Design Automation Conference on
Gwo-Dong Chen
, Daniel D. Gajski
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
|