当前位置: X-MOL 学术J. Electron. Test. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A Novel Metaheuristic Based Method for Software Mutation Test Using the Discretized and Modified Forrest Optimization Algorithm
Journal of Electronic Testing ( IF 0.9 ) Pub Date : 2023-06-20 , DOI: 10.1007/s10836-023-06070-x
Bahman Arasteh , Farhad Soleimanian Gharehchopogh , Peri Gunes , Farzad Kiani , Mahsa Torkamanian-Afshar

The number of detected bugs by software test data determines the efficacy of the test data. One of the most important topics in software engineering is software mutation testing, which is used to evaluate the efficiency of software test methods. The syntactical modifications are made to the program source code to make buggy (mutated) programs, and then the resulting mutants (buggy programs) along with the original programs are executed with the test data. Mutation testing has several drawbacks, one of which is its high computational cost. Higher execution time of mutation tests is a challenging problem in the software engineering field. The major goal of this work is to reduce the time and cost of mutation testing. Mutants are inserted in each instruction of a program using typical mutation procedures and tools. Meanwhile, in a real-world program, the likelihood of a bug occurrence in the simple and non-bug-prone sections of a program is quite low. According to the 80–20 rule, 80 percent of a program's bugs are discovered in 20% of its fault-prone code. The first stage of the suggested solution uses a discretized and modified version of the Forrest optimization algorithm to identify the program's most bug-prone paths; the second stage injects mutants just in the identified bug-prone instructions and data. In the second step, the mutation operators are only injected into the identified instructions and data that are bug-prone. Studies on standard benchmark programs have shown that the proposed method reduces about 27.63% of the created mutants when compared to existing techniques. If the number of produced mutants is decreased, the cost of mutation testing will also decrease. The proposed method is independent of the platform and testing tool. The results of the experiments confirm that the use of the proposed method in each testing tool such as Mujava, Muclipse, Jester, and Jumble makes a considerable mutant reduction.



中文翻译:

一种基于元启发式的软件突变测试新方法,使用离散和改进的福雷斯特优化算法

软件测试数据检测到的错误数量决定了测试数据的有效性。软件工程中最重要的主题之一是软件突变测试,它用于评估软件测试方法的效率。对程序源代码进行语法修改以生成有缺陷(变异)的程序,然后使用测试数据执行生成的变异(有缺陷的程序)和原始程序。突变测试有几个缺点,其中之一是计算成本较高。突变测试的更高执行时间是软件工程领域的一个具有挑战性的问题。这项工作的主要目标是减少突变测试的时间和成本。使用典型的突变过程和工具将突变体插入到程序的每条指令中。与此同时,在一个现实世界的程序中,在程序的简单部分和不易出现错误的部分中出现错误的可能性非常低。根据 80-20 规则,程序 80% 的错误是在 20% 的易出错代码中发现的。建议解决方案的第一阶段使用 Forrest 优化算法的离散化和修改版本来识别程序最容易出现错误的路径;第二阶段仅在已识别的容易出错的指令和数据中注入突变体。在第二步中,变异算子仅被注入到已识别出的容易出现错误的指令和数据中。对标准基准程序的研究表明,与现有技术相比,所提出的方法减少了约 27.63% 的突变体。如果产生的突变体数量减少,突变测试的成本也会降低。所提出的方法独立于平台和测试工具。实验结果证实,在 Mujava、Muclipse、Jester 和 Jumble 等每个测试工具中使用所提出的方法可以显着减少突变。

更新日期:2023-06-23
down
wechat
bug