webdriver与浏览器_操作页面元素—弹出窗口
2016-01-21 14:04
344 查看
Webdriver除了可以处理浏览器默认窗口上的元素,还可以处理各种弹出窗口,包括识别弹出窗口、在弹出窗口中执行测试步骤,切换到原始窗口等操作。
这些功能的实现步骤如下:
打开父窗口并使用webdriver的getWindowHandler方法记录下父窗口的控点:
String parentWindowId = driver.getWindowHandler();
验证父窗口的完整标题
assertEquals("<父窗口的完整标题>",driver.getTitle);
获取所有已打开的窗口控点列表
Set<String> allWindowsId = driver.getWindowHandles();
在这个控点列表中查找包含要查找的弹出窗口标题某段字符串的窗口控点,找到后则停止查找
for(String windowId : allWindowsId){
if(driver.switchTo().window(windowId).getTitle().contains("<目标查找窗口Tilte的某段字符串>")){
driver.switchTo().window(windowId).getTitle().contains("<目标查找窗口Tilte的某段字符串>");
break;
}
}
同样,使用assertTrue()方法验证查找的弹出窗口是否为目标查找窗口
【注】如果目标查询窗口没有标题或者不想用标题的方式进行查找,则可以使用窗口内容进行查找,查找方法getTitle()更换为getPageSource()即可
这些功能的实现步骤如下:
打开父窗口并使用webdriver的getWindowHandler方法记录下父窗口的控点:
String parentWindowId = driver.getWindowHandler();
验证父窗口的完整标题
assertEquals("<父窗口的完整标题>",driver.getTitle);
获取所有已打开的窗口控点列表
Set<String> allWindowsId = driver.getWindowHandles();
在这个控点列表中查找包含要查找的弹出窗口标题某段字符串的窗口控点,找到后则停止查找
for(String windowId : allWindowsId){
if(driver.switchTo().window(windowId).getTitle().contains("<目标查找窗口Tilte的某段字符串>")){
driver.switchTo().window(windowId).getTitle().contains("<目标查找窗口Tilte的某段字符串>");
break;
}
}
同样,使用assertTrue()方法验证查找的弹出窗口是否为目标查找窗口
【注】如果目标查询窗口没有标题或者不想用标题的方式进行查找,则可以使用窗口内容进行查找,查找方法getTitle()更换为getPageSource()即可
相关文章推荐
- LeetCode 101 Symmetric Tree(对称树)(*)
- ios UIStatusBar statusBar 状态栏 更改状态栏颜色
- 服务器慢 mysql-bin.000001文件占满磁盘的原因与解决
- C#中计算时间差
- Java与C++的编程差异
- 利用CAShapeLayer和UIBezierPath实现中空透明圆,圆外填充色
- 对数组进行转码
- C 网页压力测试器
- storyboard 里面的两个页面 (A,B)相互转换、
- linux命令: mount
- css和javascript的一些笔记(二) js基础知识
- FlatBuffers 使用之(二):数据的写入与读取
- 广播地址的计算
- 关于JS高程的笔记(一到三章)
- 我的两篇原创文章在网上还是很火爆的!!原因何在?
- 海康威视采集卡结合opencv使用(两种方法)
- 算法之路 level 01 problem set
- 【转】中兴G718C卡刷刷机教程(青漾2 4G)--不错
- 阻塞式socket例子学习
- 为Android 5.0设计Material风格的应用程序