首页> 外文会议>International Conference on Software Analysis, Evolution, and Reengineering >Automated extraction of failure reproduction steps from user interaction traces
【24h】

Automated extraction of failure reproduction steps from user interaction traces

机译:自动提取用户交互迹线的故障再现步骤

获取原文

摘要

Bug reports submitted by users and crash reports collected by crash reporting tools often lack information about reproduction steps, i.e. the steps necessary to reproduce a failure. Hence, developers have difficulties to reproduce field failures and might not be able to fix all reported bugs. We present an approach to automatically extract failure reproduction steps from user interaction traces. We capture interactions between a user and a WIMP GUI using a capture/replay tool. Then, we extract the minimal, failure-inducing subsequence of captured interaction traces. We use three algorithms to perform this extraction: Delta Debugging, Sequential Pattern Mining, and a combination of both. Delta Debugging automatically replays subsequences of an interaction trace to identify the minimal, failure-inducing subsequence. Sequential Pattern Mining identifies the common subsequence in interaction traces inducing the same failure. We evaluated our approach in a case study. We injected four bugs to the code of a mail client application, collected interaction traces of five participants trying to find these bugs, and applied the extraction algorithms. Delta Debugging extracted the minimal, failure-inducing interaction subsequence in 90% of all cases. Sequential Pattern Mining produced failure-inducing interaction sequences in 75% of all cases and removed on average 93% of unnecessary interactions, potentially enabling manual analysis by developers. Both algorithms complement each other because they are applicable in different contexts and can be combined to improve performance.
机译:由崩溃报告工具收集的用户和崩溃报告提交的错误报告通常缺少有关再现步骤的信息,即重现失败所需的步骤。因此,开发人员难以重现现场失败,并且可能无法解决所有报告的错误。我们提出了一种自动提取用户交互迹线的故障再现步骤的方法。我们使用捕获/重放工具捕获用户和WIMP GUI之间的交互。然后,我们提取捕获交互迹线的最小失败引起的子序列。我们使用三种算法来执行此提取:Delta调试,顺序模式挖掘以及两者的组合。 Delta调试自动重播交互跟踪的子序列以识别最小,失败的子序列。顺序模式挖掘识别诱导相同故障的交互迹线中的常见子序列。我们在案例研究中评估了我们的方法。我们向邮件客户端应用程序的代码注入了四个错误,五个参与者尝试找到这些错误的互动痕迹,并应用了提取算法。 Delta调试提取最小,失败诱导的交互后续,在所有情况的90%中。顺序模式挖掘在所有情况的75%中产生了失败的相互作用序列,并在平均93%的不必要的相互作用中除去,可能通过开发人员进行手动分析。这两种算法都相互补充,因为它们适用于不同的上下文,并且可以组合以提高性能。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号