FSCT: A new fuzzy search strategy in concolic testing

FSCT: A new fuzzy search strategy in concolic testing
复制标题

DOI:
10.1016/j.infsof.2018.11.006
复制
发表时间:
2019-03
期刊:
Inf. Softw. Technol.
影响因子:
--
通讯作者:
A. Sabbaghi;H. Kanan;M. Keyvanpour
A. Sabbaghi;H. Kanan;M. Keyvanpour
中科院分区:
其他
文献类型:
--
作者:
A. Sabbaghi;H. Kanan;M. Keyvanpour

文献摘要

被引文献

相似文献

ContextConcolic测试是自动生成结构测试数据的一种很有前途的方法。然而,组合爆炸的路径空间,被称为路径爆炸,也限制测试预算,使实现高代码覆盖率concolic测试是一个具有挑战性的task.Previously探索的路径的所有分支构成concolic测试的搜索空间和搜索策略定义的机制,选择分支被翻转,以驱动执行测试目标。对于大量的候选分支,选择正确的分支继续搜索是如此关键,并直接影响覆盖率和努力。本文旨在提高分支测试的有效性,通过考虑的路径到达未覆盖的分支的特点,并提出了一种新的搜索策略,有效地和高效地探索searchspaces.MethodWe模型的分支选择过程中concolic测试作为一个决策系统,并引入了一个新的模糊搜索策略Concolic测试(FSCT)。FSCT选择一个分支来填充,其中相对于建议的覆盖因子的最合适的路径到达具有最高优先级的未覆盖的分支,并且该优先级由所设计的模糊专家系统分配。建议的覆盖率因素有效地帮助确定的特点paths.ResultsWe实现FSCT的顶部CREST和评估它使用几个流行的基准。实验结果表明,FSCT优于国家的最先进的技术,在覆盖率和覆盖efforts.ConclusionFSCT帮助concolic测试,以更好地科普路径爆炸问题,并显示其能力,以实现更高的代码覆盖率,而在同一时间减少测试工作的运行时间和迭代次数。
ContextConcolic testing is a promising approach to automate structural test data generation. However, combinatorial explosion of the path space, known as path explosion, and also constrained testing budget, makes achieving high code coverage in concolic testing a challenging task.ObjectiveAll branches of the previously explored paths make up the search space of concolic testing and search strategy define the mechanism of choosing branches to be flipped to drive the execution toward testing goals. With regard to the large number of candidate branches, choosing the right branch to continue the search is so crucial and has a direct impact on coverage rate and effort. This paper aims to improve the effectiveness of branch testing by considering the characteristics of paths reaching uncovered branches and presenting a novel search strategy for effectively and efficiently exploring the search space.MethodWe model the branch selection process in concolic testing as a decision making system and introduce a new Fuzzy Search Strategy in Concolic Testing (FSCT). FSCT chooses a branch to be filliped in which the most suitable path with respect to the proposed coverage factors reaches an uncovered branch with the highest priority and this priority is assigned by the designed fuzzy expert system. The proposed coverage factors effectively help to determine the characteristics of paths.ResultsWe implemented FSCT on top of CREST and evaluated it using several popular benchmarks. The experimental results show that FSCT outperforms the state-of-the-art techniques in terms of coverage rate and coverage effort.ConclusionFSCT helps concolic testing to better cope with path explosion problem and shows its capabilities to achieve higher code coverage while at the same time decreases testing efforts in terms of both runtime and number of iterations.