Selenium 2自动化测试实战17(警告框处理)
一、警告框处理
在WebDriver中处理JavaScript所生成的alert、confirm以及prompt十分简单,只需要使用switch_to_alert()方法定位到alert/confirm/prompt,然后使用text/accept/dismiss/send_keys等方法进行操作。
(1)text:返回alert/confirm/prompt中的文字信息
(2)accept():接受现有警告框
(3)dismiss():解散现有警告框
(4)send_keys(KeysToSend):发送文本至警告框。KeysToSend:将文本发送至警告框。
#coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
import time driver=webdriver.Chrome()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com") #鼠标悬停至设置
link=driver.find_element_by_link_text(u"设置")
ActionChains(driver).move_to_element(link).perform() #打开搜索设置
driver.find_element_by_link_text(u"搜索设置").click()
time.sleep(2) #保存设置
driver.find_element_by_class_name("prefpanelgo").click()
time.sleep(5) #接受警告框
driver.switch_to_alert().accept()
time.sleep(2) driver.quit()
从这个例子中ActionChains类所提供的move_to_element()鼠标悬停的使用。将鼠标悬停在“设置”链接上,然后在弹出的下拉菜单中单击“搜索设置”按钮,设置完成后单击“保存设置”,弹出保存确认警告框。通过switch_to_alert()方法获取当前页面上的警告框,并使用accept()方法接受警告框。
Selenium 2自动化测试实战17(警告框处理)的更多相关文章
- Selenium 2自动化测试实战
Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机Ap ...
- Selenium 2自动化测试实战3(函数、类和方法)
一.函数.类和方法1.函数在python中通过def关键字来定义函数 创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果.调用add()函数,并且上传两个参数3,5给 ...
- 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...
- Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...
- Selenium+Python自动化测试实战(2)元素定位
1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事, ...
- Selenium 2自动化测试实战33(带unittest的脚本分析)
带unittest的脚本分析 #test.py #coding:utf-8 from selenium import webdriver from selenium.webdriver.common. ...
- Selenium3 + Python3自动化测试系列八——警告框处理和下拉框选择
警告框处理 在WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confi ...
- Selenium 2自动化测试实战18(上传文件)
一.上传文件 上传文件是比较常见的web功能之一,但WebDriver没有提供专门用于上传的方法. 一般web页面的上传功能的操作需要单击“上传”按钮后打开本地的Window窗口,从窗口选择本地文件进 ...
- Selenium 2自动化测试实战39(Page Object设计模式)
Page Object设计模式 Page object是selenium自动化测试项目开发时间的最佳设计模式之一,主要体现在对界面交互细节的封装. 1.认识page object优点如下:1.减少代码 ...
随机推荐
- 运维学习篇之jenkins的安装(CentOS7)
一. 介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能二. 作用 1.持续的软件版本 ...
- 01:main特别之处
有点意思的main 图解运行结果解释:[:数组L:长类型ava.lang:包名String:字符串类型元素@:分界符667262b6:哈希值主函数特殊之处:public static void mai ...
- Dubble 01 架构模型&start project
Dubbo 01 架构模型 传统架构 All in One 测试麻烦,微小修改 全都得重新测 单体架构也称之为单体系统或者是单体应用.就是一种把系统中所有的功能.模块耦合在一个应用中的架构方式.其优点 ...
- spring-data-neo4j 4.2.4release文档概要
Neo4j是一种开源的NoSQL图数据库,将数据以图(把一个个实体当作节点,连接节点的边表示节点间的关系)的形式保存,Neo4j也支持ACID事务管理.关系型数据库数据访问采用的是ORM(对象关系映射 ...
- BZOJ3329 Xorequ[数位DP+递推矩阵快速幂]
数 位 D P 开 long long 首先第一问是转化. 于是就可以二进制下DP了. 第二问是递推,假设最后$n-1$个01位的填法设为$f[i-1]$(方案包括 ...
- CSS三角的写法(兼容IE6)
目录 简介 优点 原理 1. 先创建一个div 2. 然后给div设定边框. 3. 给div的四个边框都设置不同的颜色 4. 把宽度和高度都变成0 5. 其余角为透明 6. 兼容IE6浏览器 造成这样 ...
- 手动解析网易云音乐MP3真实地址
火狐打开音乐播放页面 然后按F12 点击网络选项卡 点击音乐播放按钮 然后过滤输入“url” 选中筛选出来的结果 点击右边的相应选项卡 下面的url里面就是真实的预约MP3地址
- [Linux系统] (7)Keepalived高可用
一.解决LVS server单点故障 如果集群中只有一台LVS server提供数据包分发服务,如果宕机,则会导致所有的业务重点,因为所有的请求都无法到达后面的Real server. 此时我们可以采 ...
- 在linux安装php
去www.php.net找下载最新的版本 http://www.php.net/downloads.php 下载解压 # wget http://cn2.php.net/distributions/ ...
- Eclipse中导入两个相同的工程
问题描述:同时在Eclipse中导入两个相同的工程,会有 Some projects cannot be imported because they already exist in the work ...