当前位置: X-MOL 学术Memetic Comp. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Using genetic programming to evolve action selection rules in traversal-based automated software testing: results obtained with the TESTAR tool
Memetic Computing ( IF 3.3 ) Pub Date : 2018-06-09 , DOI: 10.1007/s12293-018-0263-8
Anna I. Esparcia-Alcázar , Francisco Almenar , Tanja E. J. Vos , Urko Rueda

Traversal-based automated software testing involves testing an application via its graphical user interface (GUI) and thereby taking the user’s point of view and executing actions in a human-like manner. These actions are decided on the fly, as the software under test (SUT) is being run, as opposed to being set up in the form of a sequence prior to the testing, a sequence that is then used to exercise the SUT. In practice, random choice is commonly used to decide which action to execute at each state (a procedure commonly referred to as monkey testing), but a number of alternative mechanisms have also been proposed in the literature. Here we propose using genetic programming (GP) to evolve such an action selection strategy, defined as a list of IF-THEN rules. Genetic programming has proved to be suited for evolving all sorts of programs, and rules in particular, provided adequate primitives (functions and terminals) are defined. These primitives must aim to extract the most relevant information from the SUT and the dynamics of the testing process. We introduce a number of such primitives suited to the problem at hand and evaluate their usefulness based on various metrics. We carry out experiments and compare the results with those obtained by random selection and also by Q-learning, a reinforcement learning technique. Three applications are used as Software Under Test (SUT) in the experiments. The analysis shows the potential of GP to evolve action selection strategies.

中文翻译:

在基于遍历的自动化软件测试中使用遗传编程来发展动作选择规则:使用TESTAR工具获得的结果

基于遍历的自动化软件测试涉及通过其图形用户界面(GUI)测试应用程序,从而以用户的观点并以类似于人的方式执行操作。这些操作是在运行时自动决定的,因为正在运行被测软件(SUT),而不是以测试之前的序列形式进行设置,该序列随后用于执行SUT。在实践中,随机选择通常用于决定在每个状态下执行哪个动作(此过程通常称为“猴子测试”),但文献中还提出了许多替代机制。在这里,我们建议使用遗传编程(GP)来发展这种行动选择策略,定义为IF-THEN规则列表。事实证明,遗传程序设计适合开发各种程序,特别是在定义了足够的原语(功能和终端)的情况下制定规则。这些原语必须旨在从SUT和测试过程的动态中提取最相关的信息。我们介绍了许多适合当前问题的原语,并根据各种指标评估了它们的有用性。我们进行实验,并将结果与​​通过随机选择以及通过强化学习技术Q学习获得的结果进行比较。实验中使用了三个应用程序作为被测软件(SUT)。分析显示了GP制定行动选择策略的潜力。我们介绍了许多适合当前问题的原语,并根据各种指标评估了它们的有用性。我们进行实验,并将结果与​​通过随机选择以及通过强化学习技术Q学习获得的结果进行比较。实验中使用了三个应用程序作为被测软件(SUT)。分析显示了GP制定行动选择策略的潜力。我们介绍了许多适合当前问题的原语,并根据各种指标评估了它们的有用性。我们进行实验,并将结果与​​通过随机选择以及通过强化学习技术Q学习获得的结果进行比较。实验中使用了三个应用程序作为被测软件(SUT)。分析显示了GP制定行动选择策略的潜力。
更新日期:2018-06-09
down
wechat
bug