Evolution driven on-demand automatic software testing
Lin Jinbin · 2010
Evolution driven on-demand automatic software testing method was presented to test evolving software thoroughly in time.Firstly,a control and data dependence analysis was conducted on textual differences of the source code to identify semantic difference areas,from which 'flow graph for condensed testing' was built on demand.Secondly,paths of the graph were symbolically executed to detect program flaws with false positives excluded by trigger condition evaluation.During the execution,path conditions were solved at each path crotch to prune infeasible paths in time.Lastly,the compact test case set was generated to cover execution paths affected by software updates.A tool prototype has been developed,several pieces of open source software have been tested,and real security flaws of OpenSSL have been found.