自动化测试 | 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()
相关推荐
每天吃的很好的Ruby33 分钟前
报错ValueError: sampler option is mutually exclusive with shuffle
人工智能·pytorch·python
清水白石00834 分钟前
Python 性能优化全景解析:当 Big O 骗了你——深挖常数开销、内存与解释器黑盒
开发语言·python·性能优化
oi..37 分钟前
python Get/Post请求练习
开发语言·经验分享·笔记·python·程序人生·安全·网络安全
速易达网络1 小时前
python地图商城可视化系统
python
@fai1 小时前
PyQt6 Graphic进阶实战:打造一个视觉恒定的可缩放矩形框
python·pyqt
luanma1509801 小时前
PHP vs C#:30字秒懂两大语言核心差异
android·开发语言·python·php·laravel
Channing Lewis1 小时前
Python 全局变量调用了一个函数,如何实现每次使用时都运行一次函数获取最新的结果
开发语言·python
浅墨cgz1 小时前
查找并删除源目录中与目标目录重复的文件
python
云姜.1 小时前
YAML简单使用
python
喵手1 小时前
Python爬虫实战:手把手教你Python 自动化构建志愿服务岗位结构化数据库!
爬虫·python·自动化·数据采集·爬虫实战·零基础python爬虫教学·志愿服务岗位结构数据库打造