草庐IT

poltergeist

全部标签

ruby-on-rails - capybara poltergeist - 覆盖用户代理

有人知道如何将capybarapoltergeist的用户代理覆盖到移动用户代理以进行测试吗?我发现了一些有关为seleniumwebdriver配置它的信息:http://blog.plataformatec.com.br/2011/03/configuring-user-agents-with-capybara-selenium-webdriver/这在capybara闹鬼中怎么可能? 最佳答案 请参阅poltergeistgithub页面上的链接:https://github.com/teampoltergeist/polte

ruby - 返回空白页的最小 Capybara/Poltergeist 测试

看来我正在回顾SO帖子中采取的步骤:Capybara,PoltergeistandPhantomjsandgivinganemptyresponseinbody.(如果你愿意,可以将其标记为重复,但我包含了一个最小的独立测试用例和版本号。)问题我做错了什么吗?我可以运行另一个可能有助于隔离问题的最小测试吗?文件:pgtest.rbrequire'rubygems'require'capybara'require'capybara/dsl'require'capybara/poltergeist'modulePGTestincludeCapybara::DSLextendselfdeft

ruby-on-rails - 在 Rails/Capybara/Poltergeist 规范中使用 url_for 将驱动程序发送到 example.com 而不是应用程序

如果我在功能规范中调用url_for,它会返回一个以http://www.example.com/开头的绝对URL.Capybara会很乐意尝试加载该站点上的页面,但这与我的应用程序无关。以下是重现该问题的最少步骤:从这个Gemfile开始:source'https://rubygems.org'gem"sqlite3"gem"jquery-rails"gem"draper"gem"rails",'4.1.0'gem"therubyracer"gem"uglifier"gem"rspec-rails"gem"capybara"gem"poltergeist"gem"launchy"运行

Ruby:Phantom.js 在特定站点上被阻止?

我正在使用capybarapoltergeist来自动化tumblr.com上的一个小脚本我的脚本在我的chrome驱动程序上运行良好。我的poltergeist驱动程序加载所有其他网站都很好,但由于某种原因,当我尝试加载tumblr时抛出Capybara::Poltergeist::StatusFailError.复制步骤:$brewinstallphantomjs$geminstallcapybara$geminstallpoltergeist$geminstallselenium-webdriver$irbrequire'capybara/poltergeist'moduleDr

ruby - 使用 Poltergeist 时如何获取元素的 HTML?

我正在使用带有Poltergeist驱动程序的Capybara。我的问题是:如何获取节点的HTML(字符串)?我读到过使用RackTest驱动程序你可以像这样得到它:find("table").native#=>nativeNokogirielementfind("table").native.to_html#=>"..."但是Poltergeist在节点上调用#native会返回Capybara::Poltergeist::Node,而不是原生的Nokogiri元素。然后在Capybara::Poltergeist::Node上再次调用#native再次返回相同的Capybara::

jquery - Poltergeist - 关闭 JQMIGRATE 警告

当使用poltergeist作为JavaScript驱动程序运行我的测试套件时,我遇到了以下警告:JQMIGRATE:jQuery.fn.attr(selected)mayusepropertyinsteadofattributeJQMIGRATE:jQuery.browserisdeprecated是否可以关闭它们? 最佳答案 默认情况下缩小版本是“静音”的: 关于jquery-Poltergeist-关闭JQMIGRATE警告,我们在StackOverflow上找到一个类似的问题:

javascript - 我如何在 Capybara 中测试页面是否*未*重新加载(JavaScript onClick 拦截有效)?

我正在使用Capybara、Cucumber和Poltergeist。我正在测试附加到表单提交按钮的JavaScript函数,该函数旨在捕获提交事件并阻止它(在后台执行AJAX请求)。使用和不使用AJAX,页面最终看起来都一样,但AJAX方法要快得多,并且不会中断浏览体验等。我可以做些什么来测试表单确实没有提交,并且更改是动态AJAX调用而不是重新加载的结果? 最佳答案 @jules答案的修改版本:describe"Mypage",:jsdoit"reloadswhenitshould"dovisit"/"expect_page_t

javascript - 如何使用 Capybara/Poltergeist 在页面上运行一个函数?

我在...中有一个带有JS函数(通过鼠标单击调用)的页面标签。在我进行测试时,我遇到了.click方法多次无法正常工作的问题。因此我决定简单地手动调用该函数。但是,我在Internet上找不到任何资源可以教您如何执行此操作。我想避免点击链接并简单地调用doSumbit('5').谢谢!JS函数是:functiondoSubmit(infoTypeId){document.forms[1].INFOTYPEID.value=infoTypeId;document.forms[1].action=document.forms[1].action+"#"+infoTypeId;documen

javascript - 如何使用 capybara 和恶作剧检查 Javascript 错误?

我试图弄清楚如何将Poltergeist的这个功能准确地实现到我现有的Capybara测试中,但在阅读此处的文档后我没有任何运气:https://github.com/teampoltergeist/poltergeist我已经包含了以下代码,但是当我运行测试时,当我知道控制台中存在JS错误时,我没有看到任何关于JS错误的警告。我错过了什么吗?我是否必须在终端中传递特定命令以确保检查JS错误?谢谢!require'capybara/poltergeist'Capybara.javascript_driver=:poltergeistoptions={js_errors:true}Cap

javascript - 在 Poltergeist 中暂时将 js_errors 设置为 false

我有一组测试指向用户登录的Facebook页面。不幸的是,这个页面有一些我无法影响的JavaScript错误,所以我的测试永远不会完成。有什么方法可以暂时禁用JS错误检查吗?我在想类似的事情:Capybara.javascript_driver.js_errors=false然后稍后将其设置为true,但不幸的是这不起作用。我已经尝试过这种方法的变体,但无济于事。关于如何解决我的问题有什么想法吗? 最佳答案 感谢RomanPominov的评论,我得以找到解决方案。其实很简单:我只是在有问题的语句之后添加了rescueCapybara