A flexible and non-intrusive approach for computing complex structural coverage metrics

ICSE(2015)

引用 11|浏览71
暂无评分
摘要
Software analysis tools and techniques often leverage structural code coverage information to reason about the dynamic behavior of software. Existing techniques instrument the code with the required structural obligations and then monitor the execution of the compiled code to report coverage. Instrumentation based approaches often incur considerable runtime overhead for complex structural coverage metrics such as Modified Condition/Decision (MC/DC). Code instrumentation, in general, has to be approached with great care to ensure it does not modify the behavior of the original code. Furthermore, instrumented code cannot be used in conjunction with other analyses that reason about the structure and semantics of the code under test. In this work, we introduce a non-intrusive preprocessing approach for computing structural coverage information. It uses a static partial evaluation of the decisions in the source code and a source-to-bytecode mapping to generate the information necessary to efficiently track structural coverage metrics during execution. Our technique is flexible; the results of the preprocessing can be used by a variety of coverage-driven software analysis tasks, including automated analyses that are not possible for instrumented code. Experimental results in the context of symbolic execution show the efficiency and flexibility of our non-intrusive approach for computing code coverage information.
更多
查看译文
关键词
flexible nonintrusive approach,software analysis tools,software analysis technique,structural code coverage information,software dynamic behavior reasoning,structural obligation,compiled code execution monitoring,coverage reporting,instrumentation based approach,runtime overhead,modified condition-decision,code instrumentation,code behavior,code semantics,nonintrusive preprocessing approach,structural coverage information,static partial evaluation,source code,source-to-bytecode mapping,structural coverage metrics tracking,coverage-driven software analysis,symbolic execution
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要