1、测试的时候一般调用的浏览器窗口都不是全屏的,为了不影响体验我们需要将窗口最大化 解决的方案:


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


2、弹窗的处理

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


补充说明:

(1)accept 表示点击【确认】按钮

(2)dismiss 表示点击【取消】按钮

(3)send_keys() 表示【输入内容】

(4)text 表示获取弹出框的【文本】

(5)先导入alert类【from selenium.webdriver.common.alert】并有上述属性

图示用例


实际操作示例


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

自己犯下的低级错误: a1 = driver.switch_to.alert()

后面不可加括号,因为aler是属性,不是方法;方法才用()调用。属性直接就对象.属性

二、div窗口处理

直接定位元素位置操作即可

图示用例


实际操作示例


三、定位下拉弹框

(1) Select类


图示用例


实际代码示例[1]


实际代码示例[2]


实际代码示例[3]


图示用例


实际代码示例[4]


补充说明:

(1) 实际代码示例[1]中index(2)表示选择下拉框中的第三个,因为是从0开始算起的;

(2) 实际代码示例[2]中value值要加引号,且值要和图示用例中的代码值相对应;

(3) 实际代码示例[3]中选项文字同样要和图示案例中的文字相对应;

(4) Select只对标签下的下拉框有效;

(5) 定位非标签下的下拉框,先定位下拉框,再定位下拉框中的内容即可。

四、多窗口切换处理


操作流程:

[1]打开百度网页,获取当前搜索窗口句柄;

[2]打开注册新窗口;

[3]获取所有窗口句柄;

[4]循环判断进入注册窗口;

[5]注册窗口用户名输入框输入“name ”确认其切换窗口成功;

[6]循环判断返回搜索窗口(也可用访问列表值方法返回)

[7]关闭弹窗,在搜索窗口输入框输入“自动化”,确认其切换成功。