自动化测试 | 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()
相关推荐
合作小小程序员小小店37 分钟前
web网页,在线%抖音,舆情,线性回归%分析系统demo,基于python+web+echart+nlp+线性回归,训练,数据库mysql
python·自然语言处理·回归·nlp·线性回归
q***25138 分钟前
Python中的简单爬虫
爬虫·python·信息可视化
最晚的py38 分钟前
Python Matplotlib
python·数据分析
柳鲲鹏1 小时前
OpenCV:文件视频防抖,python版
python·opencv·音视频
@sinner3 小时前
你好,Scikit-learn:从零开始你的第一个机器学习项目
python·机器学习·scikit-learn
麦烤楽鸡翅3 小时前
简单迭代法求单根的近似值
java·c++·python·数据分析·c·数值分析
hyswl6663 小时前
2025年开发小程序公司推荐
python·小程序
独行soc3 小时前
2025年渗透测试面试题总结-258(题目+回答)
网络·python·安全·web安全·渗透测试·安全狮
程序员小远4 小时前
Appium-移动端自动测试框架详解
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
johnny2334 小时前
AI加持测试工具汇总:Strix、
人工智能·测试工具