我有一个 Rails 应用程序,我正在使用 nitrous.io box 来开发它。我正在尝试运行我的 cucumber 功能,但由于未安装 firefox 而出现错误。我尝试安装 firefox,但盒子的安全设置不允许我这样做。
有没有办法在氮气箱上运行 cucumber 功能?
最佳答案
由于您无法在 Web IDE 中使用 Web 浏览器,因此您需要使用 PhantomJS .您可以使用 Autoparts 包管理器安装最新版本:
parts install phantomjs
安装后,您需要配置您的 Rails 应用程序才能使用它。有很多文章可以帮助您解决这个问题。这是来自blog.pezholio.co.uk的一点其中包括将 PhantomJS 与 Cucumber 结合使用:
" 我假设你已经在你的 Rails 应用程序中设置了 Cucumber-rails,所以如果你还没有,看看这个 Railscast让你开始。
接下来,将 poltergeist 添加到您的 gemfile(可能在您的 :test 组中),如下所示:
gem 'poltergeist'
并运行bundle install
接下来要做的是在 Cucumber 中将 Poltergeist 注册为新浏览器,并使其作为所有 JavaScript 测试的默认驱动程序运行。打开您的 features/support/env.rb 文件并添加以下行:
require 'capybara/poltergeist'
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, {debug: false})
end
Capybara.javascript_driver = :poltergeist
那么你应该可以开始了!至关重要的是,您需要确保将 @javascript 标记添加到所有测试中,以便 Capybara 知道使用 Poltergeist 进行测试,但除此之外,当您现在运行测试时,而不是启动浏览器窗口,一切像魔术一样在后台发生! "
关于ruby - 在 Nitrous.io 上运行 cucumber ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20922868/