RSpec 测试失败 - 使用显示套接字但缺少锁定文件

Posted

技术标签:

【中文标题】RSpec 测试失败 - 使用显示套接字但缺少锁定文件【英文标题】:RSpec tests failing - Display socket is taken but lock file is missing 【发布时间】:2017-03-31 11:06:26 【问题描述】:

我正在尝试在我的 Rails 应用程序中运行 RSpec 测试并不断收到以下错误:

:> rspec spec/controllers/api/v0/buying_strategies_controller_spec.rb
    WARN: Unresolved specs during Gem::Specification.reset:
      activemodel (< 6.0, >= 3.0, >= 4.2.0)
      activesupport (>= 3.0, >= 4.2.0)
   WARN: Clearing out unresolved specs.
   Please report a bug if this causes problems.
/Users/christopherdanella/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/headless-2.3.1/lib/headless.rb:207:in `ensure_xvfb_launched': Display socket is taken but lock file is missing - check the Headless troubleshooting guide (Headless::Exception)
from /Users/christopherdanella/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/headless-2.3.1/lib/headless.rb:195:in `launch_xvfb'

这里的故障排除指南http://www.rubydoc.info/github/leonid-shevtsov/headless#Display_socket_is_taken_but_lock_file_is_missing 只是说这是一种特殊情况并打开一个问题。有什么想法吗?

【问题讨论】:

【参考方案1】:

您可以尝试清理 gem,似乎您有多个版本的相同 gem,而 rspec 不知道该使用哪个。

看看另一个 QA 的回答: https://***.com/a/18127613/7219974

【讨论】:

以上是关于RSpec 测试失败 - 使用显示套接字但缺少锁定文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 rspec rails 请求测试中发布缺少authentity_token 的帖子?

使用 Rails.cache 时 Rspec 测试失败,但如果我执行 binding.pry 则通过

在 RSpec 中测试更新操作,结果为真,但测试失败?

由于符号而不是 Rails 导致哈希失败的 RSpec 测试

RSpec capybara:涉及 Ajax 的测试单独通过,但一起运行时失败

随机种子在rspec中失败但没有自行失败