Python3+selenium3的web端UI测试:控制窗口大小、弹窗、多窗口切换处理方法(3)

一、测试的时候通常调用的浏览器窗口都不是全屏的,为了避免影响体验咱们须要将窗口最大化 解决的方案:

clipboard.png

按照本身的意愿设置窗口大小(注意:其中数字大小为像素点)

clipboard.png

二、弹窗的处理
1、alert弹窗 这种弹窗可用selenium自带的方法进行处理

clipboard.png

补充说明:
(1)accept 表示点击【确认】按钮
(2)dismiss 表示点击【取消】按钮
(3)send_keys() 表示【输入内容】
(4)text 表示获取弹出框的【文本】
(5)先导入alert类【from selenium.webdriver.common.alert】并有上述属性

图示用例web

clipboard.png

实际操做示例浏览器

clipboard.png

注意:这里这个switch_to.alert()实际上是旧写法,照理应该是用switch_to_alert(),可是新写法却会报错,多是版本问题,能够尝试看哪种不会报错。

本身犯下的低级错误: a1 = driver.switch_to.alert()
后面不可加括号,由于aler是属性,不是方法;方法才用()调用。属性直接就对象.属性测试

2、div窗口处理
直接定位元素位置操做便可
图示用例spa

clipboard.png

实际操做示例对象

clipboard.png

3、定位下拉弹框

(1) Select类 blog

clipboard.png

图示用例ip

clipboard.png

实际代码示例[1]selenium

clipboard.png

实际代码示例[2]it

clipboard.png

实际代码示例[3]自动化

clipboard.png

图示用例

clipboard.png

实际代码示例[4]

clipboard.png

补充说明:

(1) 实际代码示例[1]中index(2)表示选择下拉框中的第三个,由于是从0开始算起的;
(2) 实际代码示例[2]中value值要加引号,且值要和图示用例中的代码值相对应;
(3) 实际代码示例[3]中选项文字一样要和图示案例中的文字相对应;
(4) Select只对<select>标签下的下拉框有效;
(5) 定位非<select>标签下的下拉框,先定位下拉框,再定位下拉框中的内容便可。

4、多窗口切换处理

clipboard.png

操做流程:

[1]打开百度网页,获取当前搜索窗口句柄;
[2]打开注册新窗口;
[3]获取全部窗口句柄;
[4]循环判断进入注册窗口;
[5]注册窗口用户名输入框输入“name ”确认其切换窗口成功;
[6]循环判断返回搜索窗口(也可用访问列表值方法返回)
[7]关闭弹窗,在搜索窗口输入框输入“自动化”,确认其切换成功。

clipboard.png

clipboard.png

相关文章
相关标签/搜索