首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Poltergeist:忽略phantomjs_logger选项

Poltergeist:忽略phantomjs_logger选项
EN

Stack Overflow用户
提问于 2018-09-12 15:22:40
回答 1查看 258关注 0票数 0

在此设置中:

代码语言:javascript
复制
require 'capybara/poltergeist'
Capybara.register_driver :poltergeist do |app|
  Capybara::Poltergeist::Driver.new(app, {
    phantomjs_options: ['--ignore-ssl-errors=yes', '--ssl-protocol=any', '--load-images=no'], debug: false, timeout: 500, screen_size: [1600, 1200], js_errors: false,.
    logger: File.open( Rails.root.join("./log/test.poltergeist.log").to_s, "a" ),
    phantomjs_logger: File.open( Rails.root.join("./log/test.phantomjs_console.log").to_s, "a" )
  })
end

Phantomjs忽略phantomjs_logger选项,并将应用程序输出到控制台的所有内容转储到STDOUT,因此在运行我的规范时会看到大量垃圾。

我没有成功地将phantomjs_logger设置为Logger.new(.)、File.open("/dev/null“、.)、0、false,以及几乎所有你能想到的东西,它就是什么都不做。

理想情况下,我希望错误能够使测试和其他.info .log失败,不管是什么消息,只要通过管道发送到日志文件。但我也可以接受把它全部发送到日志文件中。

稍后编辑:似乎这是发生在铬无头以及。它只是将console.log转储到stdout中:

我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-12 19:44:49

在这个问题上浪费了几个小时之后,我将日志打开到$stdout中,从而使其正常工作。不知道为什么它不能按照医生的要求工作,但是哦,好吧。

代码语言:javascript
复制
$stdout = File.open( Rails.root.join("./log/test.phantomjs_console.log").to_s )

require 'capybara/poltergeist'
Capybara.register_driver :poltergeist do |app|
  Capybara::Poltergeist::Driver.new(app, {
    phantomjs: "/usr/local/bin/phantomjs", # '>> ./log/test.phantomjs_console.log 2>&1'
    phantomjs_options: [ '--ignore-ssl-errors=yes', '--ssl-protocol=any', '--load-images=no', '--debug=false' ], debug: false, timeout: 500, window_size: [1600, 1200], js_errors: false,.
    logger: File.open( Rails.root.join("./log/test.poltergeist.log").to_s, "a" ),
    phantomjs_logger: $stdout
  })
end

稍后编辑:设法在同时设置铬。政客已经过时了。如果你遇到这个q/a,并且你试图让恶搞者工作,停下来,切换到铬。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52298646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档