2011-10-17 92 views
1

我正在将我们的基于速度的集成测试移动到capybara-webkit。 在git-hub(https://github.com/thoughtbot/capybara-webkit)上为capybara-webkit提供的文档很有帮助,但我无法运行我的测试,最终导致jruby错误:水豚webkit jruby

NotImplementedError :叉在这个平台上不可用 org/jruby/RubyKernel.java:1792:in`fork'

有没有一种方法可以让我的capybara-webkit与jruby一起工作?

回答

0

这是一个远射,但你有没有在你的Gemfile尝试gem 'spoon'

0

我还没有能够得到与JRuby工作的水豚-webkit。在我的开发/ TDD周期中使用MRI以及切换到JRuby(使用RVM)以确保一切仍然运行,我已经取得了成功。当我运行JRuby功能(黄瓜)时,我只是使用硒来测试javascript。我有位设置代码,看起来在功能/支持/的setup.rb与此类似:

Before do 
    if running_in_jruby 
    Capybara.javascript_driver = :selenium 
    else 
    Capybara.javascript_driver = :webkit 
    end 
end 

这是特定于课程的黄瓜,但你应该能够做到与rspec的类似的东西。我发现由于启动时间比Java快,所以在运行我的测试时MRI的速度要快很多。在功能开发过程中,我会多次运行我的功能/规格,然后在签入之前,我将切换到JRuby并运行测试一次。

1

你可以尝试poltergeist,它也提供了一个水豚的无头webkit驱动程序,但不依赖任何本地扩展。相反,它使用PhantomJS来驱动测试。根据README jruby的支持。

相关问题