Unit testing 编辑触发测试是下一步吗?

Unit testing 编辑触发测试是下一步吗?,unit-testing,testing,ide,tdd,infinitest,Unit Testing,Testing,Ide,Tdd,Infinitest,我刚刚读了MichaelC.Feathers的一本伟大的书,这本书是关于将测试引入遗留代码的圣经。在这本书中,他描述了一种叫做编辑触发测试的东西: 如果这本书出版时它还没有出版,我怀疑很快就会有人开发一个IDE,允许您指定一组在每次击键时运行的测试。这将是一个令人难以置信的关闭反馈回路的方法 它必须发生。这似乎是不可避免的。已经有一些IDE可以在每次击键时检查语法,并在出现错误时更改代码的颜色。编辑触发测试是下一步 当我读到这篇文章时,我还没有听说过任何IDE或工具支持这一点。然而,我刚刚发现了

我刚刚读了MichaelC.Feathers的一本伟大的书,这本书是关于将测试引入遗留代码的圣经。在这本书中,他描述了一种叫做编辑触发测试的东西:

如果这本书出版时它还没有出版,我怀疑很快就会有人开发一个IDE,允许您指定一组在每次击键时运行的测试。这将是一个令人难以置信的关闭反馈回路的方法

它必须发生。这似乎是不可避免的。已经有一些IDE可以在每次击键时检查语法,并在出现错误时更改代码的颜色。编辑触发测试是下一步

当我读到这篇文章时,我还没有听说过任何IDE或工具支持这一点。然而,我刚刚发现了一个名为的项目,它支持Java的这种功能

我的问题是:

  • 是否有其他工具/框架支持此功能(希望Visual Studio也支持此功能)
  • 您对此类测试有何经验(效率高、IDE速度慢等)
  • 这是TDD的下一步吗
  • 更新:

    • 请看一看这个,看看Infinitest在Eclipse中的作用
    • 刚刚找到一个博客,Brett Schuchert分享了一些

    好吧,它本质上是测试驱动的开发,随着您的键入,测试将持续运行?所以我不会说“编辑触发测试”是一种新的开发技术,而只是IDE的一个特性


    关于这个特性的速度,我想这实际上取决于您的项目有多复杂,您使用的编译器和语言,以及您正在进行的更改。如果您要修改整个项目中使用的某个基本库,那么编译器将不得不重新编译大部分程序,以便能够使用您的代码在其他库中运行测试。

    对于ruby来说,还有一些问题。它在您编辑文件时连续运行单元测试,使用一些简单的约定将源文件映射到测试文件。还有一个插件,我看到它在emacs中以交互方式将测试代码涂成红色或绿色。我认为这种在代码编辑器本身中通过/失败的即时视觉反馈的想法很好。

    从最初的问题开始已经有几年了,并且有一些工具可用于.NET(我假设其他语言的空间也在增长)

    有一个名为的.NET版本的Autotest(),它已被分叉并更新为一个功能更全面的工具,名为。我大约在一年前尝试过,当时它看起来有很大的潜力,但不幸的是,听起来好像他们已经决定停止开发。然而,从好的方面来看,现在是

    我没有用过,但它是一种商业产品,似乎正在积极开发中

    有一些可能也符合你的要求

    另见这个问题:

    有趣的概念!我认为这还需要一段时间才能变得可靠和性能良好。我同意这不是一种新的开发技术,它更多的是缩短测试的反馈。