【如何学习Python自动化测试】—— 警告框处理

简介: 【如何学习Python自动化测试】—— 警告框处理

7 、 警告框处理

     在 web 中,除了上面提到的元素和操作之外,还有就是页面的提示框的处理了,页面的警告框通常分为这几类 js:alert 、 confirm 以及 prompt,这些警告框,我们都可以通过 switch_to_alert()来处理。

     对警告框的处理有以下几种:

  • 接受警告框:使用 alert.accept() confirm.accept()prompt.accept()方法,点击“确定”按钮,关闭警告框。
  • 拒绝警告框:使用confirm.dismiss()prompt.dismiss()方法,点击“取消”按钮,关闭警告框。
  • 获取警告框文本:使用alert.textconfirm.textprompt.text属性,获取警告框上的文本信息。
  • 输入信息:使用prompt.send_keys()方法,向警告框中输入需要的信息。


弹窗的处理

A、警告提示弹窗

  • 【描述】:包含提示信息和【确认】按钮
  • 【操作】:1、获取弹窗内容;2、进行“确认”操作
  • 【语法实现】
  • 1、获取弹窗内容:driver.switch_to.alert.text
  • 2、进行确认操作:driver.switch_to.alert.accept()

B、确认弹窗

  • 【描述】:包含提示信息和【确认】【取消】按钮
  • 【操作】:1、获取弹窗内容;2、进行“确认”操作;3、进行取消操作
  • 【语法实现】
  • 1、获取弹窗内容:driver.switch_to.alert.text
  • 2、进行确认操作:driver.switch_to.alert.accept()
  • 3、进行取消操作:driver.switch_to.alert.dismiss()

C、输入信息提示弹窗

  • 【描述】:包含提示信息、输入信息框和【确认】【取消】按钮
  • 【操作】:1、获取弹窗内容;2、输入框输入信息;3、进行“确认”操作;4、进行取消操作
  • 【语法实现】
  • 1、获取弹窗内容:driver.switch_to.alert.text
  • 2、输入框输入信息:driver.switch_to.alert.send_keys()
  • 3、进行确认操作:driver.switch_to.alert.accept()
  • 4、进行取消操作:driver.switch_to.alert.dismiss()

     将下列代码保存为.html 文件,点击上面的清空数据的按钮,会产生一个 confirm 的警告框,点击确定,则输入框内显示确定,点击取消,则输入框显示取消,接下来对这 个警告框进行处理。代码如下:

<script>
  function clear1()
  {
    if(confirm("确定要清空数据吗?"))
    {
      document.main.text1.value = "确定";
    }
    else
    {
      document.main.text1.value = "取消";
    }
  }
</script>
<body>
  <form name="main">
    <input type="text" name="text1" />
    <input type="button" name="Submit" value="清空数据" onClick="return clear1();">
  </form>
</body>
from selenium import webdriver
导入 webdriver
from time import sleep
需要用到 sleep 来暂停,所以这里导入 time 的 sleep 模块 driver = webdriver.Firefox()打开 firefox 浏览器
driver.get('file:///D:/test/test1.html')
打开 html 文件
driver.find_element_by_css_selector('body > form:nth-child(1) > input:nth-child(2)').click()
点击按钮
text=driver.switch_to_alert().text
获取警告框的文本,赋给 text 变量
print text
将文本输出
driver.switch_to_alert().dismiss ()
点击警告框中的取消
sleep(3)
等待 3 秒
driver.find_element_by_css_selector('body > form:nth-child(1) > input:nth-child(2)').click()
再次点击按钮
driver.switch_to_alert().accept()
点击警告框中的确定

问一问:

     chrome中带单选框的弹窗要怎么操作单选框呢?比如调用迅雷下载时,每次都弹出是否打开迅雷的提示,左边会有个单选框来勾选不再提示。

在Chrome中操作带有单选框的弹窗,可以通过以下步骤进行:

定位到弹窗:使用合适的选择器或定位方式,找到包含单选框的弹窗元素。

选择单选框:查找并定位到需要选择的单选框元素。

点击选择:使用适当的方法或操作,点击选中单选框。可以使用click()方法或模拟鼠标点击事件。

验证选择:根据需要,可以获取所选择的单选框的状态进行验证。可以使用isSelected()方法来检查是否选中。

需要注意的是,具体的实现可能会因为不同的页面和技术而有所不同。可以使用Selenium等自动化测试工具来完成这些操作。如果是手动操作,则需要使用鼠标进行点击。


相关文章
|
3天前
|
Python
|
1天前
|
C语言 Python
​python学习之变量类型​
​python学习之变量类型​
|
2天前
|
机器学习/深度学习 数据可视化 PyTorch
使用Python实现深度学习模型:迁移学习与预训练模型
使用Python实现深度学习模型:迁移学习与预训练模型
19 0
|
2天前
|
Python
Python学习 笔记(五) 判断语句
Python学习 笔记(五) 判断语句
15 3
|
3天前
|
区块链 Python
最新用Python从零开始创建区块链_基于python做区块链,哔哩哔哩测试面试题
最新用Python从零开始创建区块链_基于python做区块链,哔哩哔哩测试面试题
|
3天前
|
数据采集 数据挖掘 测试技术
python如何实现自动化办公?看完这篇文章你就知道了_python自动化办公
python如何实现自动化办公?看完这篇文章你就知道了_python自动化办公
python如何实现自动化办公?看完这篇文章你就知道了_python自动化办公
|
3天前
|
机器学习/深度学习 数据挖掘 开发工具
2024年最全0基础学python开发工具及学习平台推荐_python平台a,面试阿里巴巴客服
2024年最全0基础学python开发工具及学习平台推荐_python平台a,面试阿里巴巴客服
2024年最全0基础学python开发工具及学习平台推荐_python平台a,面试阿里巴巴客服
|
3天前
|
Java 程序员 C语言
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
|
3天前
|
数据采集 JSON 数据格式
2024年最新【python基础教程】常用内置模块(1),2024年最新头条测试面试
2024年最新【python基础教程】常用内置模块(1),2024年最新头条测试面试
|
6天前
|
数据采集 数据挖掘 Python
Python学习——函数,2024年最新手持4个大厂offer的我
Python学习——函数,2024年最新手持4个大厂offer的我