Font Size: a A A

Research On Path Explosion And Constraint Solution Of Symbol Execution

Posted on:2020-02-13Degree:MasterType:Thesis
Country:ChinaCandidate:T Y WangFull Text:PDF
GTID:2428330602457969Subject:Engineering
Abstract/Summary:PDF Full Text Request
Software testing is an important way to improve software reliability.The basic technology means of software testing is to use different test cases to execute the program under test.Test case generation plays a pivotal role in software testing.Symbolic execution is a classic program analysis technique.With the enhancement of computing power and storage capacity of modern computers,development techniques have emerged:dynamic symbol execution and selective symbolic execution,which are currently used for program defect mining and test case generation.In reality,the application of symbolic execution is constrained by problems such as path explosion and constraint solving.The loop structure in the tested program is an important influencing factor,which will lead to a multiplication of the number of program paths,which increases the difficulty of the test case generation and reduces the test case generation efficiency.The path explosion problem and the constraint solving problem caused by the loop structure in the software test case generation process are studied.The main research contents are as follows:(1)Investigate and study the theory of symbolic execution.The theory and ideas of selective symbol execution and heuristic path search strategy are introduced,and the concept,principle and execution flow of the strategy in detail are given,and uses examples to demonstrate the execution steps.A path search strategy based on control flow graph optimization loop structure is proposed.Three loop structures and related algorithms are defined and test case generation is guided by selective symbolic execution.Heuristic search strategy is introduced in the process of path selection to prioritize and select paths and guide the generation of paths.(2)Investigate and study well-known constraint solving tools.In order to improve the time efficiency of constraint solving,a comprehensive constraint solution method is proposed.The format constraints of the collected path constraints are determined,and the constraint categories are judged.The related principles and execution flow of the comprehensive constraint solution method are introduced in detail.(3)In the experimental session,the solving time efficiency of the comprehensive constraint solving method is tested.Test the influence of the loop structure on the path search strategy based on the control flow chart to optimize the loop structure.Compare the experiment with other search strategies,and verify the execution time efficiency and coverage,Test the performance of the heuristic search strategy based on the control flow chart proposed in the paper,and prove the feasibility of the method.
Keywords/Search Tags:Test Case, Selective Symbol Execution, Path Search Strategy, Control Flow Graph, Constraint Solver
PDF Full Text Request
Related items