自动化测试 | alert处理

alert处理:

switch_to.alert.dismiss() 是 Selenium WebDriver 中用于处理浏览器弹出框(如警告框、确认框和提示框)的一个方法。它允许你关闭(即"dismiss")当前显示的 JavaScript 弹出框,而不需要进行任何确认或输入;反之switch_to.alert.accept()方法则是用于接受(或确认)当前显示的 JavaScript 弹出框。

使用场景

  • dismiss(),当你需要自动化测试一个网页,而该网页在某个操作中会弹出一个警告框,但你希望忽略该警告框并继续执行后续操作时。
  • accept(),当你需要自动化测试一个网页,而该网页在某个操作中会弹出一个确认框,你希望确认该框并继续执行后续操作时。

测试脚本代码:

python 复制代码
# 导包
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.by import By
# 获取浏览器驱动对象
driver = webdriver.Chrome()

# 最大化浏览器
driver.maximize_window()

# 隐性等待
driver.implicitly_wait(30)

# 打开url
url = r"D:\Learn\autoTest\rescource\注册A.html"
driver.get(url)

# 定位alert按钮并点击
driver.find_element(By.CSS_SELECTOR, "#alerta").click()

# 切换 到alert
# 默认返回的alert对话框对象
# 处理 对话框
# 同意
#driver.switch_to.alert.accept()
# 取消
driver.switch_to.alert.dismiss()

# 定位 用户名 输入admin
driver.find_element(By.CSS_SELECTOR, "#userA").send_keys("admin")

# 暂停5秒
sleep(5)

# 关闭驱动对象
driver.quit()
相关推荐
276695829210 分钟前
tiktok 弹幕 逆向分析
java·python·tiktok·tiktok弹幕·tiktok弹幕逆向分析·a-bogus·x-gnarly
cylat15 分钟前
Day59 经典时序预测模型3
人工智能·python·深度学习·神经网络
sunshine__sun19 分钟前
web网页用postman调用接口测试(超简单方法)
测试工具·postman
嘉恩督19 分钟前
视频人脸处理——人脸面部动作提取
python·音视频
WJ.Polar21 分钟前
Python数据容器-集合set
开发语言·python
smppbzyc43 分钟前
2025年亚太杯(中文赛项)数学建模B题【疾病的预测与大数据分析】原创论文讲解(含完整python代码)
python·数学建模·数据分析·数学建模竞赛·亚太杯数学建模·亚太杯
xiaocainiao8811 小时前
Python 实战:构建可扩展的命令行插件引擎
开发语言·python
一筐大白菜啊1 小时前
【工具】什么软件识别重复数字?
测试工具
运器1232 小时前
【一起来学AI大模型】PyTorch DataLoader 实战指南
大数据·人工智能·pytorch·python·深度学习·ai·ai编程
音元系统2 小时前
Copilot 在 VS Code 中的免费替代方案
python·github·copilot