Improving Evolutionary Test Data Generation with the Aid of Symbolic Execution
نویسندگان
چکیده
Recently, search based techniques have received great attention as a means of automating the test data generation activity. On the contrary, more traditional methods that automate the test data generation usually employ symbolic execution by incorporating a path generation phase and constraint solvers to produce the sought test data. In this paper, the benefits of both schools of thought are bridged in an attempt to investigate whether a mixed strategy approach could be employed when evaluating a coverage criterion. To this effect, a strategy that uses symbolic execution and dynamic domain reduction in order to enhance the initial population and approximately prune the search space considered by evolutionary based methods is proposed. This suggestion is also put under a number of tests which clearly show a dramatic improvement of its effectiveness. This suggests that the combination of evolutionary based and symbolic execution approaches can be beneficial toward, automating the generation of test data.
منابع مشابه
Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution by
INKUMSAH, KOBI K. Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution. (Under the direction of Dr. Tao Xie). Achieving high structural coverage such as branch coverage in object-oriented programs is an important and yet challenging goal due to two main challenges. First, some branches involve complex program logics and generating ...
متن کاملUse of Evolutionary Techniques for Symbolic Execution Based Testing
Evolutionary methods when used as a test data generator optimize the given input (usually called test case) according to a selected test coverage criterion encoded as a fitness function. Basically, the genetic algorithms and other Evolutionary techniques are based on pure random search. However, these algorithms adapt to the given problem. In the last decade lot of evolution based metaheuristic...
متن کاملAutomatically Performing Weak Mutation with the Aid of: Symbolic Execution, Concolic and Search Based Testing1
Automating software testing activities can increase the quality and drastically decrease the cost of software development. Towards this direction various automated test data generation tools have been developed. The majority of existing tools aim at structural testing, while a quite limited number aim at a higher level of testing thoroughness such as mutation. In this paper an attempt towards a...
متن کاملAn Evolutionary Method for Improving the Reliability of Safetycritical Robots against Soft Errors
Nowadays, Robots account for most part of our lives in such a way that it is impossible for usto do many of affairs without them. Increasingly, the application of robots is developing fastand their functions become more sensitive and complex. One of the important requirements ofRobot use is a reliable software operation. For enhancement of reliability, it is a necessity todesign the fault toler...
متن کاملSymbolic execution systems-a review - Software Engineering Journal
Symbolic execution is a technique that is useful in the validation of software. It may be used to aid in the generation of test data and in program proving. As software engineering becomes more concerned with the development of tools, symbolic execution will become an important item in the toolkit. This paper gives a review of symbolic execution and its applications. A minimum set of features f...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009