[Selenium2.0]对onload弹出框的尝试

这次尝试主要目的是测试在onload时弹出框,是否会block测试脚本的运行。

先自己写一段测试页面:

# myapp.rb
require 'sinatra'

get '/' do
'
<html>
<head>
<script type="text/javascript">
function load()
{
alert("123")
}
</script>
</head>

<body onload="load()">
</body>

</html>

'
end

在sinatra服务器上运行不会被弹文件不安全的弹出框。不然一个本地文件也搞定了。然后访问http://localhost:4567/,看下效果,确定在onload时弹窗了。


开始写测试代码:(版本:selenium 2.0 webdriver, ruby的implementation )


require "selenium-webdriver"

url = "http://localhost:4567/"
driver = Selenium::WebDriver.for :firefox
driver.navigate.to(url)
sleep 2
asert = driver.switch_to.alert
asert.accept

看到的效果是页面正常加载,弹出框正常显示,并且点击确认成功关闭。

然后,改用 Selenium::WebDriver.for :ie 和 :chrome

得出以下结论:
firefox: 页面正常加载,弹出框正常显示,并且点击确认成功关闭。
ie: 页面正常加载,弹出框正常显示,但会卡在driver.navigate.to(url)方法上,一直等待页面加载完成。
chrome: 同ie

对于上面两种卡住不能操作的,是在webdriver的navigate增加了wait导致的。解决就通过点击windows窗口控件的方式异步操作来搞了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值