Author(s): |
Chen-kai Guo, College of Information Science,NanKai University,Tianjin,China Xiu-juan Ji, College of Information Science,NanKai University,Tianjin,China Jing Xu, College of Information Science,NanKai University,Tianjin,China |
Abstract: |
With the development of software testing technology, symbolic execution has brought renewed interest in research fields, which takes significant advantage in automation generation of test cases and feasibility determination of paths. However, as one of inherent limitations of symbolic execution, array confusion problem impacts its practicality. Symbolic execution will crash under complex array variables due to array semantic confusion. Aiming at array confusion problem, we proposed instrumentation algorithm and its optimized strategy. Branch conditions are instrumented into array variable statements which located in the same path. Meanwhile, newborn variables and branch reduction are analyzed. Through experiments, instrumentation algorithm can clearly refine array variables and reduce branches. Practicality of symbolic execution is effectively improved.
|