ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Capybara和Javascript onbefoureunload

2019-05-31 10:21:46  阅读:283  来源: 互联网

标签:javascript ruby-on-rails cucumber webdriver capybara


我有一个带有onbeforeunload函数的’ask_a_question’页面,在离开未保存的东西之前提醒用户(嘿!如SO:P).我正在使用带有水豚和webdriver的黄瓜进行测试,添加了@javascript标签,因为它使用了大量的javascript.黄瓜功能可能如下所示:

@javascript
Scenario: add a question
    Given I login as "Mauricio"
    And I go to the create question page 
    Then I should see "Ask a Question" within "header"

但是一旦测试开始,Capybara(或WebDriver,我不知道)尝试重复使用相同的浏览器窗口进行其他测试,然后显示onbeforeunload警告,拧紧以下测试.

由于我的功能本身并未关闭或退出页面.我不认为添加一些东西来接受警报可能是个好主意.但说实话,我很失落.

如何告诉capybara为每个@javascript测试使用新的浏览器窗口或自动关闭onbeforeunload警报?

感谢名单

解决方法:

你可以使用page.driver.browser.switch_to.alert.dismiss(docs here)来摆脱警报.

你可以把它放在黄瓜钩后

After "@javascript" do
  page.driver.browser.switch_to.alert.dismiss
  # or accept it if that is what you prefer
  page.driver.browser.switch_to.alert.accept
end

标签:javascript,ruby-on-rails,cucumber,webdriver,capybara
来源: https://codeday.me/bug/20190531/1188642.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有