首页 > 解决方案 > Rails 规范仅通过示例,但整个文件失败

问题描述

我有一个 Rails 规范文件。当我运行时:rspec my_spec.rb

有3次失败。这些失败是在相同的上下文中。

图片

但是当我单独运行它们时(例如:rspec my_spec.rb:231),它们通过了。

很少单独测试也失败了,如果那样,我重新启动 docker 然后它又通过了。

在此处输入图像描述

我不确定出了什么问题?我尝试在 spec_helper 中添加DatabaseCleaner.cleanredis.flushdb但不走运。有什么想法可以提供帮助吗?

标签: ruby-on-railsdockerredisrspec-rails

解决方案


没有规范很难为您提供帮助。但是根据我自己的经验,通常这是硬编码期望的问题。喜欢:

expect(response.id).to eq(1)

而不是:

expect(response.id).to eq(object.id)

当您仅运行测试时,它会起作用,因为只有一个实体。检查这个,如果它没有帮助,请向我们提供更多信息。乐意效劳。


推荐阅读