1、弹出框类型:
1)、alert 警告框
2)、confirm 确认框
3)、prompt 提示框
2、弹出框处理方法(方法三种弹出框操作都一样)
`1)、获取弹出框对象:
alert = driver.switch_to.alert
2)、调用
alert.text —>返回alert/confirm/prompt中的文字信息
alert.accept() —>接受对话框选项
alert.dismiss() —->取消对话框选项
3、为什么要处理警告框?
如果页面有弹出框,不处理,接下来的将不生效
提示:无论以上那个对话框,都可以使用取消、同意,因为调用的是后台事件,根页面显示的按钮数量无关
执行代码:
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(30)
# 找不到合适的网站做测试,自己准备的材料,需要的评论给资源
driver.get('file:///Volumes/WinInstall/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/02%E9%85%8D%E5%A5%97%E8%B5%84%E6%96%99/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95%EF%BC%88%E6%96%B0%EF%BC%89/%E9%98%B6%E6%AE%B55%EF%BC%9AWEB%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/%E8%AF%BE%E5%A0%82%E7%B4%A0%E6%9D%90/%E6%B3%A8%E5%86%8CA.html')
# 定位弹窗框的元素按钮
ele = driver.find_element(By.CSS_SELECTOR,'#alerta')
ele.click()
time.sleep(2)
# 处理警告框
# 获取警告框对象
alerta = driver.switch_to.alert
time.sleep(2)
# 获取警告框的内容文本
print(alerta.text)
# 同意警告框
alerta.accept()
time.sleep(2)
# 用户名输入框输入admin
ele1 = driver.find_element(By.CSS_SELECTOR,'#userA')
ele1.send_keys('admin')
time.sleep(2)
# 关闭浏览器
driver.quit()
注意:
1、driver.switch_to.alert方法适用于以上三种类型对话框,调用时没有括号
2、获取文本方法,调用时没有括号 如:alert.text
3、在项目中不是所有的小窗口都是以上三种对话框
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。