gpt4 book ai didi

ruby - 如何处理 watir 中弹出的安全警报

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:27 25 4
gpt4 key购买 nike

在花了一整天的时间试图弄清楚如何处理 Watir 中的安全弹出警报之后,我基本上碰壁了。

我正在尝试制作一个非常简单的脚本来登录到这个 HTTPS 站点,它会抛出我无法通过的弹出警报。

要查看此消息,请键入:此站点上的“弹出安全警报”“https://www.google.com/cse/home?cx=007267089725385613265:gmydx5gtw6u

我试过的是这样的:

  1. 在 Firefox 中的“about:config”中完全禁用此消息,但这是不可能的,因为警告仍然会弹出。

  2. 我已尝试要求“WindowsHelper”和“WindowsClicker”,如本页所示:http://rubyforge.org/pipermail/wtr-general/2007-February/009181.html我看到该文档相当旧。

  3. 还找到了一个在消息框上使用“.use”然后单击它的示例,但这没有帮助。

在 2 和 3 中,我编写的代码可能是错误的,因为我不是 Watir 的专家。

我现在的代码是这样的:

require 'rspec'
require 'watir-webdriver'

SITE = "https://anypage.com"
BROWSER = Watir::Browser.start(SITE, :firefox)

Given /^I am on the login page for anypage$/ do
BROWSER.goto(SITE)
end

When /^I successfully log in as a user$/ do

BROWSER.text_field(:name => 'UserName').set 'USERNAME'
BROWSER.text_field(:name => 'Password').set 'PASSWORD'
BROWSER.button(:class => 'btn btn-lg btn-primary btn-block').click
**MustHandlePopUpHere**
BROWSER.do_more
end

如果这很重要,我将使用 WatirWebdriver 版本 0.6.8 和 Ruby 版本 1.9.3。

最佳答案

Watir 有一个用于处理警报的 API。您可以使用以下方式确认警报:

BROWSER.alert.ok

这是 Watir 搜索页面的一个工作示例:

require 'watir'

# Go to the page
browser = Watir::Browser.new :firefox
browser.goto 'https://www.google.com/cse/home?cx=007267089725385613265:gmydx5gtw6u'

# Input the search
browser.text_field(:id => 'q').set('security alert pop up')
browser.button(:value => 'Search').click

# Confirm the popoup
browser.alert.ok

您可以在以下位置阅读有关警报 API 的更多信息:

关于ruby - 如何处理 watir 中弹出的安全警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22449300/

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