|
|
The Study of Binary Program Test Techniques Based on Backtracking and Leading for Covering Key Code Area |
Cui Bao-jiang①② Liang Xiao-bing① Wang Yu② Wang Jian-xin③ |
①(School of Computer, Beijing University of Posts & Telecommunications, Beijing 100876,China)
②(China Information Technology Security Evaluation Center, Beijing 100085, China)
③(School of Information Science & Technology, Beijing Forestry University, Beijing 100083, China) |
|
|
Abstract Path traverse is a kind of important software testing method of software test. However, as the number of paths of software is usually exponential, to test every path is unpractical. From the point view of software security test, the execution of critical code fragments in the binary program is more interested. The critical code fragments are the statements which call the danger function, the functions with high cyclomatic complexity and the code fragments with loop-writing memory. In this paper, a data auto-generation method is presented, which covers the critical code area, this approach is based upon binary program and does not need the source code of the test program. These paths which can reach the critical code areas are automatically obtained by a method called path backtracking, and are automatically generated test data for these paths by a method called path leading. It is based on the symbolic execution and concrete execution, regulates the test input step by step and uses the constraint solver to generate the test cases. Theory analysis and experiment results indicate that the method of path leading can reduce the execution number of test data generation contrast with existing methods of generating test data for a given path, the method of path leading improves the efficiency of test data generation.
|
Received: 02 June 2011
|
|
Corresponding Authors:
Liang Xiao-bing
E-mail: liangxbg@tom.com
|
|
|
|
|
|
|