This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
2011 Asian Test Symposium
An Efficient 2-Phase Strategy to Achieve High Branch Coverage
New Delhi, Delhi India
November 20-November 23
ISBN: 978-0-7695-4583-7
We present a new 2-phase symbolic execution driven strategy that achieves high branch coverage in software quickly. Phase 1 follows a greedy approach that quickly covers as many branches as possible by exploring each branch through its corresponding shortest path prefix. Phase 2 covers the remaining branches that are left uncovered if the shortest path to the branch was infeasible. In Phase 1, a basic conflict-driven learning is used to skip all the paths that may have any of the earlier encountered conflicting conditions, while in Phase 2, a more intelligent conflict-driven learning is used to skip regions that do not have a feasible path to any unexplored branch. This results in considerable reduction in unnecessary SMT solver calls. Experimental results show that significant speedup can be achieved, effectively reducing the time to detect a bug and providing higher branch coverage for a fixed time-out period than previous techniques.
Index Terms:
branch coverage, symbolic execution, conflict-driven learning, software testing
Citation:
Sarvesh Prabhu, Michael S. Hsiao, Saparya Krishnamoorthy, Loganathan Lingappan, Vijay Gangaram, Jim Grundy, "An Efficient 2-Phase Strategy to Achieve High Branch Coverage," ats, pp.167-174, 2011 Asian Test Symposium, 2011
Usage of this product signifies your acceptance of the Terms of Use.