ruby - 在 Nitrous.io 上运行 cucumber

标签 ruby cucumber nitrousio

我有一个 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/

相关文章:

ruby - 续集 gem 增量

java - Cucumber-JVM 3 - 使用 Maven 的 Allure 2 测试报告

java - Cucumber spring WebDriver 在 @After 方法中退出的设计问题

testing - 如何读取 cucumber 项目中的excel文件?

ruby-on-rails - 如何在新的 Nitrous.io IDE 上设置 SearchKick/ElasticSearch?

nitrousio - Rails 4.2beta 的 Rails 亚硝酸预览问题

ruby - 救援方法在哪里?

ruby - 如何优化代码 - 它有效,但我知道我错过了很多学习

ruby-on-rails - Rails4 和 MongoMapper