博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Robot Framework与Web界面自动化测试学习笔记:定位到新窗口
阅读量:6265 次
发布时间:2019-06-22

本文共 929 字,大约阅读时间需要 3 分钟。

在页面操作中,有时会需要打开新的窗口(新的网页不在当前窗口显示,而是在新的tab页显示),

比如利用  window.open("newurl")

或者  <a href="newurl" target="_blank">新窗口</a>

这时候新的页面都会在新窗口打开。

这样我们可能就需要对新页面中的内容进行检查和定位。

但这样前提是我们需要定位到该新的窗口。

比如我们用例中有这样一个语句:

click button    id=newWin

上面这个语句对应的button的click事件响应代码中调用了 window.open("newurl") 打开一个新的窗口。

这时我们要想对这个新窗口页面中信息进行检查,必须要先定位到新窗口。

selenium2提供了 select window 关键字,该关键字会定位到新窗口,下面的操作都是围绕该新窗口来进行的了。

关键是靠参数来标识新的窗口,有如下方法:

1) select window title=xxxx  

其中xxx是新页面的title属性,这就要求新页面必须有title属性。

2)select window name=xxxx

这里的name是对应新窗口的name属性值(针对javascript).

比如如果是利用 window.open("newurl","newwin");打开的新窗口,这里的newwin就是新页面的name属性。

或者<a href="newurl"  target="newWindow" id="newlink">新窗口</a> 这里的newWindow就是新页面的name属性。

注意:需要注意的是,无论是用open方法或者在a设置name值, 如果再次点击,则会在同样的name窗口中打开。

即使是url不同,也会在相同窗口打开。 所以在指定时需要注意。

所以比较简单的方式,就是为每个页面设置自己的title属性,这样既简单,又跟js无关,而且每个窗口有自己的title也是合理的和比较好的方式。

还有一点,在rf+selenium2的帮助中,还说明了select window可以通过设定url值来定位,但实际操作发现有问题,无法定位。这是个bug,可能跟版本有关。

 

转载地址:http://xudpa.baihongyu.com/

你可能感兴趣的文章
JS 防抖函数和节流函数
查看>>
win-Linux文件脚本迁移过程中的问题 syntax error: unexpected end of file
查看>>
java攻城狮之路--复习JDBC(PrepareStatement)
查看>>
Java学习之HttpClient的GET与POST请求
查看>>
PHP表单提交验证各种方式
查看>>
ASP.net获取当前页面的文件名,参数,域名等方法
查看>>
Java反射内部类
查看>>
vxlan和vlan数据报文
查看>>
jQuery中其他
查看>>
(十四) Java B2B2C多用户商城 springboot架构- Spring Cloud构建分布式电子商务平台
查看>>
Spss统计描述分析
查看>>
快排-C语言实现
查看>>
Oracle11完全卸载方法
查看>>
实例变量和属性(转)
查看>>
HTML笔记
查看>>
php7安装步骤
查看>>
c# WPF客户端调用WebAPI并转换成List
查看>>
洛谷 2634&&BZOJ 2152: 聪聪可可【点分治学习+超详细注释】
查看>>
loadrunner
查看>>
JavaScript数组去重
查看>>