【发布时间】:2012-03-22 12:50:29
【问题描述】:
我目前正在做一个项目,我们开始将我们的测试迁移到隔离测试(不依赖 Rails,并使用存根和模拟)。 问题是,在所有当前测试都被隔离之前,我们必须与隔离测试一起运行测试,这将启动 rails 环境。
问题来了,在孤立的测试中,有一个假类(class Foo; end;),它将在其余测试中覆盖原始类。
示例: 在 foo_spec.rb 我们有这一行
class Bar; end;
这会为下一个非隔离测试覆盖 Bar 类,并会导致很多失败。
为了摆脱这种情况,我可以想出两种方法: - 在使用 rails env 运行测试时注释掉假类 - 将隔离的测试放在另一个文件夹中,并将它们与其他测试分开运行(这会更有意义)
你能想出更好的方法来解决这个问题吗?
【问题讨论】:
标签: ruby-on-rails testing stub stubs