Unit testing 如何处理非回归测试?
这不是RubyonRails的问题,但这就是我们正在使用的框架 我们正在将数据从遗留系统迁移到我们自己的系统中,并一直在测试执行数据迁移的代码。这些测试与其他应用程序测试一起运行,因此在提交时针对构建服务器运行,等等 一旦我们迁移了这些数据,这些测试对我们来说似乎是无用的,因为他们正在测试的代码将永远不会再次运行。更重要的是,测试很可能会过时,并且可能需要维护,以免破坏我们的构建Unit testing 如何处理非回归测试?,unit-testing,tdd,Unit Testing,Tdd,这不是RubyonRails的问题,但这就是我们正在使用的框架 我们正在将数据从遗留系统迁移到我们自己的系统中,并一直在测试执行数据迁移的代码。这些测试与其他应用程序测试一起运行,因此在提交时针对构建服务器运行,等等 一旦我们迁移了这些数据,这些测试对我们来说似乎是无用的,因为他们正在测试的代码将永远不会再次运行。更重要的是,测试很可能会过时,并且可能需要维护,以免破坏我们的构建 我们是不是应该在事后把这些测试扔掉?用某种方式给他们贴标签,这样他们就不会在我们真的做事后被人利用了?还有什么吗?如
我们是不是应该在事后把这些测试扔掉?用某种方式给他们贴标签,这样他们就不会在我们真的做事后被人利用了?还有什么吗?如果是我,我会将进行数据迁移的项目与其测试分离出来。这样,测试就不会在当前的构建过程中产生噪音,只有在(出于某种原因)再次接触迁移项目时才需要修改它们 如果这是不可能的,那么一旦你完成了,就把它全部撕下来。如果你需要找回它,它应该在源代码管理中。。。对 摆脱它们*
*也就是说,如果您需要引用它们,就让它们坐在源代码管理中。我还建议在您退出测试时标记存储库,以防您需要返回测试。通常情况下,您认为某些东西再也不需要了,只需要在几个月后重新恢复(在那里,就这样做了)。问题是,数据迁移需要根据他们当前所在的项目进行验证。也就是说,我们需要确保我们从旧系统带来的数据在我们当前的系统中是有意义的,测试我们当前系统的唯一方法是在同一个项目中进行这些测试。我们已经将我们为这个特定数据迁移所做的工作进行了分支,因此我们将在源代码管理中一个单独的地方完成所有的工作和测试,因此将它们从我们的主分支中删除可能是最好的选择。