gpt4 book ai didi

ruby-on-rails-3 - Cucumber + Capybara 测试以确保打开一个新窗口

转载 作者:行者123 更新时间:2023-12-04 11:58:00 25 4
gpt4 key购买 nike

我的功能文件中有以下几行:

Given I have website "www.google.co.uk" 
When I click the website "www.google.co.uk"
Then "www.google.co.uk" page is opened in a new window

我正在努力寻找一种方法来测试网页是否肯定在新窗口中打开。

目前我一直在我的步骤定义中使用它:
Then /url "([^"]*)" is opened in new window/ do |url|
browser = page.driver.browser
current_id = browser.window_handle
tab_id = page.driver.find_window(url)
browser.switch_to.window tab_id
page.driver.browser.close
browser.switch_to.window current_id
end

但是如果网页加载在同一页面上,这仍然通过测试,如果网页加载在同一窗口/选项卡上,我希望它失败。

有什么建议?

非常感谢

最佳答案

我在你的测试中没有看到任何断言。

我的方法是测试 window_handles 的大小对链接执行点击操作后的数组,因为点击前大小应等于 1,点击后 window_handles应该等于 2。

assert page.driver.browser.window_handles.size == 2

恕我直言,足够好,因为如果网页在同一个选项卡中加载,则大小将为 1,测试将失败。

关于ruby-on-rails-3 - Cucumber + Capybara 测试以确保打开一个新窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8806345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com