Selenium alert 弹窗处理!

页面弹窗有 3 种类型:

  1. alert(警告信息)
  2. confirm(确认信息)
  3. prompt(提示输入)

对于页面出现的 alert 弹窗,Selenium 提供如下方法:

序号方法/属性描述
1accept()接受
2dismiss()取消
3text获取显示的文本
4send_keys()输入内容

对应处理方式

  1. alert(警告信息):WebDriver.switch_to.alert.accept()
  2. confirm(确认信息):

    1. WebDriver.switch_to.alert.accept()
    2. WebDriver.switch_to.alert.dismiss()
  3. prompt(提示输入):WebDriver.switch_to.alert.send_keys()
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】

alert(警告信息)弹出框

alert(警告信息)弹出框,目的是提示通知信息,只需要用户看完点击确认即可。

from selenium import webdriver
from time import sleepdriver = webdriver.Chrome()  # 打开浏览器
driver.get("http://sahitest.com/demo/alertTest.htm")  # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1")  # 定位
element.click()  # 点击
sleep(1)
alert = driver.switch_to.alert  # 切换到弹窗
print(alert.text)  # 打印弹窗显示的信息:Alert Message
alert.accept()  # 接受
sleep(2)driver.quit()  # 关闭浏览器

confirm(确认信息)弹出框

confirm(确认信息)弹出框,主要是让用户来确定是否要执行某个操作。比如,淘宝,京东等,删除订单是弹出此类弹出,让用户确定是否删除,避免用户误操作。

confirm(确认信息)弹出框提供两种选择,“确认” 或者 “取消”。只需要选择其中一个即可:

确认:WebDriver.switch_to.alert.accept()

取消:WebDriver.switch_to.alert.dismiss()

from selenium import webdriver
from time import sleepdriver = webdriver.Chrome()  # 打开浏览器
driver.get("http://sahitest.com/demo/confirmTest.htm")  # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1")  # 定位
# 1、接受
element.click()  # 点击
sleep(1)
alert = driver.switch_to.alert  # 切换到弹窗
print(alert.text)  # 打印弹窗显示的信息:Alert Message
alert.accept()  # 接受
sleep(2)# 2、取消
element.click()  # 点击
sleep(1)
alert = driver.switch_to.alert  # 切换到弹窗
print(alert.text)  # 打印弹窗显示的信息:
alert.dismiss()
sleep(2)driver.quit()  # 关闭浏览器

prompt(提示输入)弹出框

prompt(提示输入)弹出框,目的是需要用户先输入信息,再做提交。Selenium 提供输入信息的方法是:

WebDriver.switch_to.alert.send_keys()
from selenium import webdriver
from time import sleepdriver = webdriver.Chrome()  # 打开浏览器
driver.get("http://sahitest.com/demo/promptTest.htm")  # 跳转至测试页面
sleep(1)
element = driver.find_element_by_name("b1")  # 定位
# 1、接受
element.click()  # 点击
sleep(1)
alert = driver.switch_to.alert  # 切换到弹窗
print(alert.text)  # 打印弹窗显示的信息:Alert Message
alert.send_keys("自动化测试")  # 输入内容
sleep(1)
alert.accept()  # 接受
sleep(2)driver.quit()  # 关闭浏览器

注意 : 有些弹窗并非浏览器的 alert 窗口,而是 html元素,对于这种对话框,只需要通过之前介绍的选择器选中,并进行相应的操作即可。

总结

END今天的分享就到此结束了,点赞关注不迷路~ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/135781.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity 声音的控制

闲谈: 游戏开发比普通软件开发难也是有原因的,第一 游戏功能需求变化多样内部逻辑交错纵横, 而软件相对固定,无非也就是点击跳转、数据存储 第二,游戏需要很多3D数学知识、物理知识,最起码得有高中物理的基…

人类和 AI 能够“双向奔赴”吗? | 近匠

新技术时代已经开启,人类首次接触生成式人工智能,使用对话的方式和大语言模型交互, 过往的经验究竟还能不能作用于这些前沿技术? 针对这一问题,本期《新程序员》采访了一 位拥有20年技术领导经验的技术预测者&#xff…

2011年01月25日 Go生态洞察:Go与JSON的高效结合

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

C#,数值计算——函数计算,切比雪夫近似算法(Chebyshev approximation)的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// Chebyshev approximation /// </summary> public class Chebyshev { private int n { get; set; } private int m { get; set; } privat…

2023年下半年架构案例真题及答案

案例的考点&#xff1a; 大数据架构 Lambda架构和Kappa架构 jwt特点 数据持久层&#xff0c;Redis数据丢失&#xff0c;数据库读写分离方案 Hibernat架构 SysML七个关系&#xff0c;填需求图 大数据的必选题&#xff1a; 某网作为某电视台在互联网上的大型门户入口&#…

第二证券:长期停牌一般是多久?

股票停牌不仅仅是个股的问题&#xff0c;它或许会影响到商场的整体运作和投资者的利益。那么&#xff0c;长期停牌一般是多久呢&#xff1f;从不同的视点分析&#xff0c;可以得到不同的答案。 1. 官方规则 首要&#xff0c;咱们需求查看相关规则。依据证监会规则&#xff0c…

Kafka入门

kafka无疑是当今互联网公司使用最广泛的分布式实时消息流系统&#xff0c;它的高吞吐量&#xff0c;高可靠等特点为并发下的大批量实时请求处理提供了可靠保障。很多同学在项目中都用到过kafka&#xff0c;但是对kafka的设计原理以及处理机制并不是十分清楚。为了知其然知其所以…

通达OA V12版,引入thinkphp5.1框架,及获取session

通达OA V12版&#xff0c;引入thinkphp5.1框架 如下过程引入如下问题&#xff0c;按上述问题解决htmlentities(): charset cp936 not supported, assuming utf-8 内容绝对原创&#xff0c;希望对您有帮助。您的打赏&#xff0c;是让我持续更新的牛奶和面包 如下过程引入 在D:/…

项目实战:优化Servlet,把所有围绕Fruit操作的Servlet封装成一个Servlet

1、FruitServlet 这些Servlet都是围绕着Fruit进行的把所有对水果增删改查的Servlet放到一个Servlet里面&#xff0c;让tomcat实例化一个Servlet对象 package com.csdn.fruit.servlet; import com.csdn.fruit.dto.PageInfo; import com.csdn.fruit.dto.PageQueryParam; import c…

uniapp u-tabs表单如何默认选中

首先先了解该组件&#xff1b;该组件&#xff0c;是一个tabs标签组件&#xff0c;在标签多的时候&#xff0c;可以配置为左右滑动&#xff0c;标签少的时候&#xff0c;可以禁止滑动。 该组件的一个特点是配置为滚动模式时&#xff0c;激活的tab会自动移动到组件的中间位置。 …

asp.net core mvc之路由

一、默认路由 &#xff08;Startup.cs文件&#xff09; routes.MapRoute(name: "default",template: "{controllerHome}/{actionIndex}/{id?}" ); 默认访问可以匹配到 https://localhost:44302/home/index/1 https://localhost:44302/home/index https:…

生产过程建模在MES管理系统中的重要性

在现代制造业中&#xff0c;为了提升生产效能和满足市场需求&#xff0c;企业纷纷引入MES管理系统解决方案。然而&#xff0c;要成功实施MES管理系统&#xff0c;首要任务是深入理解和有效管理生产过程。为此&#xff0c;建立一个准确且可靠的生产过程模型变得至关重要。 生产…

Web服务器实战

网站需求 1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab!!! 2.给该公司创建三个网站目录分别显示学生信息&#xff0c;教学资料和缴费网站&#xff0c;基于www.openlab.com/student 网站访问学生信息&#xff0c;www.openlab.com/data网站访问教学资料 www…

【2021研电赛】基于深度学习的蛋白质与化合物结合性质预测

本作品介绍参与极术社区的有奖征集|分享研电赛作品扩大影响力&#xff0c;更有重磅电子产品免费领取! 获奖情况&#xff1a;三等奖 1.作品简介 针对药物发现过程中的药物筛选问题&#xff0c;本设计基于深度学习提出新的神经网络结构和数据处理方式用于预测蛋白质与化合物之…

更改 npm的默认缓存地址

npm的默认缓存一般在C:\Users\用户名\AppData\Roaming路径下的npm和npm_cache&#xff0c;而c盘往往空间不大。 1、在其他盘新建两个文件夹&#xff0c;如D盘&#xff0c;node_cache和node_global。如下图所示。 2、在cmd中执行npm config set prefix “node_cache的路径”&a…

关于AM5-DB低压备自投装置如何应用在某变电站项目的-安科瑞 蒋静

摘 要&#xff1a;随着电力需求的不断增加&#xff0c;电力系统供电可靠性要求越来越高&#xff0c;许多供电系统已具备两回或多回供电线路。备用电源自动投入装置可以有效提高供电的可靠性&#xff0c;该类装置能够在工作电源因故障断开后&#xff0c;自动且迅速地将备用电源投…

什么是进销存系统?有哪些流程?

这篇给大家详细介绍一下&#xff0c;到底什么是进销存系统&#xff0c;它的发展历程如何&#xff1f;企业该如何利用进销存系统获得竞争优势&#xff1f; 至于为什么越来越多的企业都选择进销存系统&#xff0c;让我们先来看一下这个实例。 假设有一家零售超市&#xff0c;他…

目标跟踪(DeepSORT)

本文首先将介绍在目标跟踪任务中常用的匈牙利算法&#xff08;Hungarian Algorithm&#xff09;和卡尔曼滤波&#xff08;Kalman Filter&#xff09;&#xff0c;然后介绍经典算法DeepSORT的工作流程以及对相关源码进行解析。 目前主流的目标跟踪算法都是基于Tracking-by-Detec…

PBJ | IF=13.8 利用ChIP-seq和ATAC-seq技术揭示MdRAD5B调控苹果耐旱性的双重分子作用机制

2023年10月24日&#xff0c;西北农林科技大学园艺学院管清美教授团队在Plant Biotechnology Journal&#xff08;最新IF&#xff1a;13.8&#xff09;上发表题为“The chromatin remodeller MdRAD5B enhances drought tolerance by coupling MdLHP1-mediated H3K27me3 in apple…

计算机网络期末复习-Part1

1、列举几种接入网技术&#xff1a;ADSL&#xff0c;HFC&#xff0c;FTTH&#xff0c;LAN&#xff0c;WLAN ADSL&#xff08;Asymmetric Digital Subscriber Line&#xff09;&#xff1a;非对称数字用户线路。ADSL 是一种用于通过电话线连接到互联网的技术&#xff0c;它提供…