论文标题
合成最终用户测试:基于行为示例对现实的剂进行建模
Synthetic End-User Testing: Modeling Realistic Agents Based on Behavioral Examples
论文作者
论文摘要
对于直接与现实世界最终用户进行交互的软件,脚本方案测试以验证系统对许多功能的遵守情况是普遍的做法。但是,这些不适应系统在实时实例中响应的最终用户活动类型的复制。尤其如此,因为合规性也可能破坏与其他用户等外部事件或过程的互动方案。最先进的方法旨在通过生成最大化某些目标指标(例如代码覆盖率)的测试来诱导软件陷入运行时错误。结果,他们遭受了针对无限大型搜索空间的攻击,在识别不会导致运行时错误的错误状态方面受到严重限制,并且它们产生的测试案例通常是挑战性的解释。其他形式的测试(例如记录复制)无法捕获最终用户的决策过程,因此产生了很大的脚本测试方案。因此,不可能测试软件与未知但合理状态的遵守情况。本文介绍了“合成最终用户测试”,这是一种针对复杂系统的新型测试策略,在该策略中,将现实世界用户合成为可重复使用的代理,并用于在模拟环境中测试和验证该软件。因此,它讨论了如何获得最终用户行为示例,并用于创建在可能动作序列的较小搜索空间中操作目标软件的代理。还引入了行动期望的概念,即允许代理商主张系统的合规性。最后,提出了主张这种策略可行性的原型。
For software interacting directly with real-world end-users, it is common practice to script scenario tests validating the system's compliance with a number of its features. However, these do not accommodate the replication of the type of end-user activity to which the system is required to respond in a live instance. It is especially true as compliance might also break in scenarios of interactions with external events or processes, such as other users. State-of-the-art approaches aim at inducing the software into runtime errors by generating tests that maximize some target metrics, such as code coverage. As a result, they suffer from targeting an infinitely large search space, are severely limited in recognizing error states that do not result in runtime errors, and the test cases they generate are often challenging to interpret. Other forms of testing, such as Record-Replay, instead fail to capture the end-users' decision-making process, hence producing largely scripted test scenarios. Therefore, it is impossible to test a software's compliance with unknown but otherwise plausible states. This paper introduces "Synthetic End-User Testing," a novel testing strategy for complex systems in which real-world users are synthesized into reusable agents and employed to test and validate the software in a simulation environment. Hence, it discusses how end-user behavioral examples can be obtained and used to create agents that operate the target software in a reduced search space of likely action sequences. The notion of action expectation, which allows agents to assert the learned compliance of the system, is also introduced. Finally, a prototype asserting the feasibility of such a strategy is presented.