摘要
为了全面测试演化软件,回归测试通常需要生成新的测试用例。concolic测试是一种沿着具体执行路径进行符号执行的软件验证技术,通过生成测试数据来执行程序的所有可行路径。回归测试中,由于concolic测试关注于程序本身,没有利用已有测试用例和软件演化信息,导致生成大量无效测试数据,浪费资源和时间。为解决此问题,提出一种基于路径引导的回归测试用例集扩增方法。该方法将目标路径作为引导,根据软件演化信息选择有利于覆盖目标路径的测试用例,利用已有测试用例跳过重叠初始子路径,对后续目标子路径进行concolic测试并生成覆盖目标路径的测试数据。案例分析表明,本文方法相比传统concolic测试,本方法在覆盖程序可行路径的同时,可有效减少concolic测试路径,提高测试数据生成效率。
To test the evolution software fully,new test cases need to be generated in regression testing typically,concolic testing is a hybrid software verification technique that performs symbolic execution along a concrete execution path,and can perform all the feasible paths of a program by generating test data.Concolic testing only focuses on the program under test with both existing test cases and software evolution information unexploited in regression testing,which results in a large number of invalid test data generation,wasting resources and time.To address this problem,a path-directed regression test suite augmentation approach is proposed.With the guidance of target paths,the approach selects the test cases conducive to cover target paths according to software evolution information,skips initial overlapping sub-paths by using the existing test cases,takes the follow-up target sub-path to guide concolic testing and generates test data covering the target paths.Case analysis demonstrates that the proposed approach can effectively reduce concolic testing paths in comparison to traditional concolic testing,and improves the efficiency of test data generation while covering feasible paths of the program.
出处
《计算机工程与科学》
CSCD
北大核心
2014年第11期2159-2163,共5页
Computer Engineering & Science
基金
国家自然科学基金资助项目(61272108)