假设我有两个测试文件。File_A_spec.rb 和 File_B_spec.rb。当 File_A 中的测试在 File_B 中的测试之前运行时,一切都通过了。但是,当 File_B 中的测试在 File_A 之前运行时,File_A 中的测试会失败。
这两个文件都是请求规范。File_A 和 File_B 中的测试是不相关的,应该没有依赖关系。这可能是什么原因造成的?
假设我有两个测试文件。File_A_spec.rb 和 File_B_spec.rb。当 File_A 中的测试在 File_B 中的测试之前运行时,一切都通过了。但是,当 File_B 中的测试在 File_A 之前运行时,File_A 中的测试会失败。
这两个文件都是请求规范。File_A 和 File_B 中的测试是不相关的,应该没有依赖关系。这可能是什么原因造成的?
固定的。失败的测试返回的错误是“未定义的方法‘锁定’”。
其中一个模型中有一个名为“锁定”的范围,我猜 ActiveRecord 不喜欢这个。类似于这里发生的事情:https ://github.com/rails/rails/issues/7421
范围已重命名,现在一切都在过去。
您很可能有静态变量或before :all
子句。
请注意,before :all
操作不会被清理。你应该把它们清理干净after :all