Selenium Webdriver弹出框的种种类型
2016-11-21 19:27
357 查看
转自:http://www.webdriver.org/article-32-1.html
测试过程中,我们经常会遇到许多的弹出框去处理,比如登陆的用户名密码输入,或是页面的警告,还或者是新页面弹出,本文我们就来将这些分类下,并解释下如何处理不同的弹出框。
普通弹出框 div
一般这种 弹出框都属于dom的一部分,我们查看一下页面源码就可以定位到改弹出框了,然后定位下右上角的那个关闭, 这里有id,所以很方便通过
dr.findElement(By.id("xxx")).click(); 就可以关掉这个弹出框了。
2、新窗口弹出框
这里我们可以看到点击open new window 这个链接以后会弹出一个新浏览器窗口.
这时,我们就需要用switch window的方法了,一般对于两个窗口来说,我们直接可以简单的switch到非当前窗口就可以了, 代码如下:
Set handles = dr.getWindowHandles();
String currentHandle = dr.getWindowHandle();
for(String handle : handles)
{
if(!handle.equals(currentHandle))
{
dr.switchTo().window(handle);
break;
}
}
如果窗口更多的话,我们就需要通过其他方式,比如窗口的title, 或是新窗口的url来判断我们需要切换的那个窗口。
3、Alert弹出框
最后我们介绍些Alert弹出框的情况,
1). Alert 类型:
点击ok
dr.switchTo().alert().accept();
2). Confirm 类型:
点击ok
dr.switchTo().alert().accept();
点击Cancel
dr.switchTo().alert().dismiss();
测试过程中,我们经常会遇到许多的弹出框去处理,比如登陆的用户名密码输入,或是页面的警告,还或者是新页面弹出,本文我们就来将这些分类下,并解释下如何处理不同的弹出框。
普通弹出框 div
一般这种 弹出框都属于dom的一部分,我们查看一下页面源码就可以定位到改弹出框了,然后定位下右上角的那个关闭, 这里有id,所以很方便通过
dr.findElement(By.id("xxx")).click(); 就可以关掉这个弹出框了。
2、新窗口弹出框
这里我们可以看到点击open new window 这个链接以后会弹出一个新浏览器窗口.
这时,我们就需要用switch window的方法了,一般对于两个窗口来说,我们直接可以简单的switch到非当前窗口就可以了, 代码如下:
Set handles = dr.getWindowHandles();
String currentHandle = dr.getWindowHandle();
for(String handle : handles)
{
if(!handle.equals(currentHandle))
{
dr.switchTo().window(handle);
break;
}
}
如果窗口更多的话,我们就需要通过其他方式,比如窗口的title, 或是新窗口的url来判断我们需要切换的那个窗口。
3、Alert弹出框
最后我们介绍些Alert弹出框的情况,
1). Alert 类型:
点击ok
dr.switchTo().alert().accept();
2). Confirm 类型:
点击ok
dr.switchTo().alert().accept();
点击Cancel
dr.switchTo().alert().dismiss();
相关文章推荐
- selenium与webdriver测试弹出窗口
- 利用selenium webdriver下载不同类型的文件(pdf,txt等等)
- 转:WebDriver(Selenium2) 处理可能存在的JS弹出框
- 【selenium webdriver】处理Windows弹出窗口(window handles)
- selenium webdriver无法解析为类型的问题
- python selenium-webdriver 处理JS弹出对话框
- WebDriver(Selenium2) 处理可能存在的JS弹出框
- Selenium 疑问之一:WebDriver 获得弹出窗口(转)
- selenium webdriver学习(六)------------如何得到弹出窗口
- Selenium Webdriver中如何处理浏览器弹出多个窗口的问题
- python selenium-webdriver 处理JS弹出对话框(六)
- python + selenium webdriver 通过python来模拟鼠标、键盘操作,来解决SWFFileUpload调用系统底层弹出框无法定位问题
- Selenium webdriver处理alert、confirm弹出框
- selenium webdriver无法解析为类型的问题
- selenium webdriver学习(六)------------如何得到弹出窗口
- Selenium webdriver 处理alert、confirm弹出框
- selenium webdriver学习(六)-怎么得到弹出窗口
- selenium-webdriver——如何在启动firefox时加载扩展
- selenium webdriver常用操作方法
- selenium webdriver test