来源:http://www.51testing.com
做Web自动化测试会遇到各种弹窗,这些弹窗可以用Selenium定位、处理。常见的网页弹窗,有如下四类:1)ajax、2)iframe、3)打开新窗口、4)alert或Confirm。
1. ajax
如下图,ajax类弹窗可以直接定位元素,然后进行相应处理。这是最普通的弹窗。
2. iframe
出现iframe弹窗,一般会有多个<iframe>…</iframe>标签,这时需要先通过关键字“SelectFrame”来选中某一个弹窗,然后再定位弹窗元素、执行操作。
3. 打开新窗口
打开新窗口其实也同iframe弹窗,需要先选择一个窗口,再定位里面的元素。一般使用关键字“Select Window”来选择。
4. alert或Confirm 类型
一般情况下,浏览器系统弹出框是alert或Confirm类型,这种弹窗不像上面的ajax弹窗,是无法定位到的。使用关键字“Choose Ok On NextConfirmation” 或 “Choose Cancel On Next Confirmation”也是不生效的。
在Robot Framework中需要先定义这个窗口,获取到这个窗口后再使用Choose关键字,是可行的。
5. 其他
在测试中,也会遇到这一类div弹窗(如下图)。一般这种提示会闪一下就没了,UI定位很麻烦。得在弹框消失前,快速复制xpath路径,或者尝试着用其它方法去获取。
好啦,暂时分享到这儿吧,欢迎留言补充其它弹窗~!