Rspec - 使用 javascript 驱动程序的 Capybara 功能规范在失败后未完成

Rspec - Capybara feature spec using the javascript driver isn't finishing after failure

我正在尝试为我的网站创建功能规范,但我几乎一开始就遇到了绊脚石。

当我尝试 运行 水豚 javascript 功能规范时,它失败了,但没有结束测试或关闭浏览器 window。

运行正在测试

RSpec.feature "Whatever", type: :feature, js: true do
  scenario "whatever again" do
    visit "/whatever_url"
    expect(true).to eq(true)
  end
end

结果

Whatever
  whatever again (FAILED - 1)

并在那里挂了几个小时,没有关于导致失败的原因的消息

我已经尝试使用 selenium 和 webkit javascript 驱动程序。 他们大部分时间都在工作,因为当我 运行 他们执行更复杂的操作时,只是完成测试部分给我带来了麻烦。

我 运行 使用 rails 4.2.4、rspec 3.5.1、水豚 2.7.1 和 ubuntu 15.10。 如果有任何其他有用的数据我应该包括请让我知道

我知道问题出在哪里了。

在我的 rails_helper 中,有一个 config.after(:all) 块包装 DatabaseCleaner.clean 在完成 javascript 规格时冻结。

测试本身的失败是在 visit 被触发时控制台中突然出现一个丢失的资产。

更新:我还遇到了水豚和 js webdrivers 与设计交互的其他问题,并使用解决方案 here 解决了该问题,在实施该解决方案后 DatabaseCleaner.clean 在 [=14] =] 不再导致此问题