我正在编写请求规范...我使用Capybara...我遇到了一些模态窗口的问题。我在测试中真正想要的是填写一个在模态窗口中弹出的表单。模态是使用来自Twitter(http://twitter.github.com/bootstrap/javascript.html#modals)的Bootstrap创建的...它正在经历一系列转换(但我不知道这是否与我要说的内容相关)。我尝试了一些在网上找到的解决方法,例如:A)使用page.driver.browser.window_handles在页面之间切换page.driver.browser.switch_to.window(page.dr
我试图弄清楚如何将Poltergeist的这个功能准确地实现到我现有的Capybara测试中,但在阅读此处的文档后我没有任何运气:https://github.com/teampoltergeist/poltergeist我已经包含了以下代码,但是当我运行测试时,当我知道控制台中存在JS错误时,我没有看到任何关于JS错误的警告。我错过了什么吗?我是否必须在终端中传递特定命令以确保检查JS错误?谢谢!require'capybara/poltergeist'Capybara.javascript_driver=:poltergeistoptions={js_errors:true}Cap
显然,根据webpage,sleep或wait_until在使用最新版本的Capybara时无效。updates.但是,如果我向测试添加sleep(1)调用,我有一组测试只能在快速机器上运行。也就是说,测试看起来像:describe"dosimeterspage"dobeforedoclick_link("DosimeterReadHistory",:match=>:first)end...成为describe"dosimeterspage"dobeforedounix_waitclick_link("DosimeterReadHistory",:match=>:first)end..
我允许用户与其他人分享照片。当用户查看照片及其描述时,他们可以单击“共享”并加载新页面。在此页面上填写电子邮件地址(和可选的评论-未在此处测试)并单击“共享照片”。系统向收件人发送一封包含链接的电子邮件,主题行包含照片的名称。带有共享表单的页面还显示照片已与之共享的个人列表。整页加载是用户投诉的一个来源。他们想要一个模态窗口来快速加载和最小化导航。我同意。我使用shadowbox.js将共享页面加载到模式窗口中的iframe中。它运行良好,并允许在需要时很好地回退到旧页面。但是-我就是无法通过测试。特别是,Capybara:Webkit无法找到iframe。环境是:铁路3.0.9cap
我正在使用rspec来测试一些页面,并且想使用click方法。但是DOM没有链接或按钮。它只是一个跨度,神奇地变成了javascript的链接。Feedbackrspec提供“click_link”和“click_button”有什么想法可以点击span吗? 最佳答案 你应该可以做到find('.feedbackLink').clickfind返回一个Element,Element类有一个#click方法。因为您可能在Javascript中处理点击,所以不要忘记添加:js=>true作为测试的元标记。
我在我的网页中为盲人和键盘用户提供了跳转链接,这些链接已移出视口(viewport)以在视觉上隐藏它们;当他们获得焦点时,他们会被移动到视口(viewport)中。我想使用RSpec和Capybara测试此行为,但不知何故不起作用。it'movesthefocustothenavigationwhenactivatingthecorrespondinglink',js:truedoexpect(page).not_tohave_css'#main:focus'page.evaluate_script"$('#jump_to_content>a').focus()"click_link'
当我运行测试时,Firefox将文件下载到默认下载目录USER\Downloads。但是,我告诉它下载到PROJECT\tmp目录中。如何让它听我说话?spec/config/capybara.rbDOWNLOAD_DIRECTORY=Rails.root.join('tmp','capybara','downloads').to_sCapybara.register_driver:firefoxdo|app|profile=Selenium::WebDriver::Firefox::Profile.newprofile['devtools.selfxss.count']=9999pr
我正在使用headlessgem来运行Capybara,而无需在Linux中打开浏览器。headless使用xvfb。Windows操作系统或Mac是否有类似的东西? 最佳答案 capybara-webkit和poltergeist在mac上运行得很好。闹鬼使用phantomjs做繁重的工作,这在Windows上可用,因此poltergeist可能会在那里工作,尽管它的文档说Windows不受支持。Capybara-webkit将32位窗口列为社区支持的平台,因此它应该可以在那里工作。
我有一组测试指向用户登录的Facebook页面。不幸的是,这个页面有一些我无法影响的JavaScript错误,所以我的测试永远不会完成。有什么方法可以暂时禁用JS错误检查吗?我在想类似的事情:Capybara.javascript_driver.js_errors=false然后稍后将其设置为true,但不幸的是这不起作用。我已经尝试过这种方法的变体,但无济于事。关于如何解决我的问题有什么想法吗? 最佳答案 感谢RomanPominov的评论,我得以找到解决方案。其实很简单:我只是在有问题的语句之后添加了rescueCapybara
我想做什么我正在尝试使用带有poltergeist的capybara通过此URL登录亚马逊......https://developer.amazon.com/rp/sales.html很简单,除了当我尝试提交表单时,出现错误...ReferenceError:找不到变量:jQuery...但是,jQuery的源代码在页面上并且应该已经加载。我用来登录的代码是这样的...visit"https://developer.amazon.com/rp/sales.html"fill_in('ap_email',with:user)fill_in('ap_password',with:pass