1.selenium自动化操作后登录步骤后,页面还需要对弹出框进行操作;然而该弹出框只在第一次出现,所以花费了大半天时间来处理,现在说一下细节~
2.首次前面的步骤肯定是按正常流程走,对于弹出框的话,我在公共方法写了一个方法进行处理。这个方法就是先去获取当前窗口的标题,然后在用例里面判断该标题是否存在。
3.这里的title直接等于需要定位的元素,我是用文本元素,所以需要转换一下文本处理,不然会报大小写的问题
4.判断弹出框, 直接用if语句就可以了。注意:我这里的界面有两个登录按钮,所以driver定位元素的时候需要用driver.find_elements,还有一个点也要注意,当元素中带有空格的时候且使用class_name进行定位时,需要加‘.’进行替换。
原元素:class="el-button login-btn el-button--button"
替换为:class="el-button.login-btn.el-button--button"
5.我这里还加了一个异常的处理,因为没有弹出框时,页面只要能跳转到正确的页面即可,所以我这里不需要报异常。跳转页面不正确的话,会在断言给出提示。
以上就是我的个人分享,如果大家有好的方法也可以和我交流~