Debugging 自动调试工具

Debugging 自动调试工具,debugging,automation,automated-tests,Debugging,Automation,Automated Tests,我最近发现了一个惊人的自动调试世界,您的工具试图自动隔离导致错误的代码部分。从那以后,我找到了一些工具,比如: (实施中)使用应用于调试的科学方法 静态和动态提取子程序跟踪,突出显示要观察的变量 使用应用于代码历史记录,并与增量调试混合使用,以快速找到导致错误的更改 我感兴趣的是寻找更多用于自动调试的算法,它可以自动化调试过程的部分(或全部?)以及存在实际工作实现的地方,特别是: 诸如delta调试之类的方法(通过使用系统化/自动化的方法,可以精确地确定代码中发生错误的位置和原因) 是否有

我最近发现了一个惊人的自动调试世界,您的工具试图自动隔离导致错误的代码部分。从那以后,我找到了一些工具,比如:

  • (实施中)使用应用于调试的科学方法
  • 静态和动态提取子程序跟踪,突出显示要观察的变量
  • 使用应用于代码历史记录,并与增量调试混合使用,以快速找到导致错误的更改
我感兴趣的是寻找更多用于自动调试的算法,它可以自动化调试过程的部分(或全部?)以及存在实际工作实现的地方,特别是:

  • 诸如delta调试之类的方法(通过使用系统化/自动化的方法,可以精确地确定代码中发生错误的位置和原因)
  • 是否有一个软件可以自动生成一个完整的程序
注意:我引用的一些工具主要是针对Python的,但我正在寻找任何语言上的自动调试工具,我感兴趣的是方法和算法,而不是具体的实现,但我需要一个实现(甚至是概念证明)因为我想要已经实际应用于实际问题的算法(也就是说,它们有效,这不是计算机科学哲学)


澄清:我不是在寻找自动测试工具(自动测试以发现新的bug),而是寻找自动调试方法,在这种方法中,您需要在代码中找到特定bug的来源。

我发现了一些软件,它们可以生成复制bug的最小程序:

  • 实际上有两个函数:dd()用于查找引入错误的最小更改,ddmin()用于查找最小配置(即最小测试用例)
  • ,一个专门为此目的而定制的计划
我还发现了一门关于Udacity的课程,名为

旁注:这些工具也有些相关(尽管它们主要是单元测试工具,但它们可以与自动调试结合使用,因此有点相关):

我仍在寻找自动调试的替代方法。

相关:并介绍了一个有趣而实用的自动调试实现——基于模糊化、统计调试和可视化技术自动查找bug。仅供参考。