繁体   English   中英

PhantomJS不适用于黄瓜测试

[英]PhantomJS does not work for Cucumber test

我已经在Rails应用程序中添加了javascript,以仅在选中其中一个复选框时才启用按钮。

$(document).on('turbolinks:load', function() {
  $(function () {
    $('.delete-checkbox').change(function() {
      if ($('.delete-checkbox:checked').length) {
        $('#delete-url-btn').removeAttr('disabled');
      } else {
        $('#delete-url-btn').attr('disabled', 'disabled');
      }
    });
  });
})

测试该代码后,该代码肯定可以在浏览器中运行。 但是,当我使用poltergeist(phantomjs)运行黄瓜测试时,似乎没有拾取javascript。 我在黄瓜功能中添加了@javascript标记,并且还按照phantomjs网站上的所有说明进行操作,以包含phantomjs。 我想知道我缺少什么?

请检查是否添加了“水豚” gem(如果您在Gemfile中没有它)和以下代码:

Capybara.register_driver :poltergeist do |app|
  Capybara::Poltergeist::Driver.new(app, js_errors: false)
end

Capybara.default_driver = :poltergeist
Capybara.javascript_driver = :poltergeist

对features / support / env.rb文件的帮助。

另外请检查您是否可以从命令行运行phantomjs。 “ phantomjs --version”。 如果您使用的是Ubuntu,则必须删除Ubuntu phantomjs软件包(该软件包已损坏: https : //github.com/ariya/phantomjs/issues/14376 ),并使用http://phantomjs.org/download.html中的软件包页。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM