【问题标题】:cucumber javascript enabled features inside vagrantvagrant 中的黄瓜 javascript 启用功能
【发布时间】:2012-02-22 16:07:40
【问题描述】:

我是黄瓜和流浪汉的忠实粉丝。我正在使用 Cucumber 以 BDD 风格驱动开发,并在 vagrant vm 中配置和设置我的开发环境一次,以便可以轻松地将其分发给其他开发人员。

在 vagrant vm 上测试 js 时遇到了麻烦。我正在使用 capybara 和 cucumber 并尝试将 selenium 和 capybara-webkit 作为 js 驱动程序。

selenium 想让我安装 firefox。所以我打包了vagrantbox,完全期望它不能工作并在vm上安装了firefox ..之后它抱怨无法与firefox建立稳定的连接。确切的错误消息:'无法在 60 秒内获得稳定的 Firefox 连接'

webkit 抱怨“webkit_server:无法连接到 X 服务器”。我安装了 xserver-org,但仍然没有骰子。

如果我不必在我的主机上安装整个环境来进行测试,我会更喜欢,因为这会破坏拥有一个可分发的 vagrant vm 的目的,它拥有开发人员在应用程序上工作所需的一切.

有什么想法吗?我在警卫的通知中遇到了类似的问题,但这似乎没有这个问题那么重要。

【问题讨论】:

    标签: ruby-on-rails selenium webkit cucumber vagrant


    【解决方案1】:

    我认为所有驱动程序都需要安装 X。 所以在linux服务器上我没有怎么做。

    通过 selenium 远程从主机使用 Firefox 的其他方式。 这意味着 javascript 将在任何机器上的远程 Firefox 上运行。

    Remote Selenium WebDriver not responding to Cucumber tests

    http://code.google.com/p/selenium/wiki/RubyBindings

    它工作。

    在主机上运行 selenium 服务器

    java -jar selenium-server-standalone.jar
    

    spec_helper.rb 的变化

    require "selenium-webdriver"
    
    profile = Selenium::WebDriver::Firefox::Profile.new
    profile["network.http.use-cache"] = false
    
    Capybara.register_driver :firefox_host do |app|
    Capybara::Selenium::Driver.new(app,
        :browser => :remote,
        :url => 'http://10.0.2.2:4444/wd/hub',
        :desired_capabilities =>   Selenium::WebDriver::Remote::Capabilities.firefox(:firefox_profile => profile)
    )
    end
    
    Capybara.server_port = 9300
    Capybara.app_host = 'http://localhost:9300'
    Capybara.javascript_driver = :firefox_host
    

    Vagrantfile 的变化

    config.vm.forward_port 9300, 9300
    

    【讨论】:

      【解决方案2】:

      您可能想尝试无头运行 Firefox。

      http://www.alittlemadness.com/2008/03/05/running-selenium-headless/

      这样,您也可以在不查看测试的情况下运行测试。

      【讨论】:

        【解决方案3】:

        我遇到了类似的问题。尝试 ssh'ing 到您的 VM 并从命令行执行 xhost +。这会禁用访问控制并允许客户端从任何主机连接以访问您的显示器。

        此外,您可能还需要export DISPLAY=:0,因为 web 驱动程序在启动 Firefox 时将默认使用此显示。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-04
          • 2011-11-23
          • 1970-01-01
          • 2019-01-29
          • 1970-01-01
          相关资源
          最近更新 更多