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