13.Selenium2 自动化测试实战-基于Python语言-多表单切换

基于Python的Selenium学习(Form表单、弹框处理) – 基于手动编写的html HTML <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!--文本框--> <div> <form action="javascript:alert('文本 阅读详情

在Web应用中,经常会遇到frame/iframe表单嵌套页面的应用,Webdriver只能在一个页面上对元素识别和定位,对于frame/iframe表单内嵌页面的元素无法直接定位,这时,就需要通过switch_to.frame()方法将当前定位的主体切换为frame/iframe表单内嵌的页面中。

'''
Date: 2017/03/28
Method:
  *  switch_to.frame()  进入表单
  *  switch_to.default_content()  退出表单至根页面
'''
from selenium import webdriver
import time,os
driver =webdriver.Chrome()
file_path='file:///'+os.path.abspath('./webdriver_api/web_page/frame.html')
driver.get(file_path)
print(file_path)


#切换到iframe(id="if")
driver.switch_to.frame("if")

#下面就可以正常的操作元素了
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)

driver.quit()


switch_to.frame()默认可以直接取表单的id或name属性。如果iframe没有可用的id和name属性,则可以使用下面的方式进行定位。

'''
Date: 2017/03/28
Method:
  *  switch_to.frame()  进入表单
  *  switch_to.default_content()  退出表单至根页面
'''
from selenium import webdriver
import time,os
driver =webdriver.Chrome()
file_path='file:///'+os.path.abspath('./webdriver_api/web_page/frame.html')
driver.get(file_path)
print(file_path)

#先通过xpath定位到iframe
xf=driver.find_element_by_xpath('//*[@class="if"]')
#再将定位对象传给switch_to.frame()方法
driver.switch_to.frame(xf)


driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)

driver.quit()


 *  switch_to.frame()  进入表单
 *  switch_to.default_content()  退出表单至根页面
 *  switch_to.parent_content() 跳出当前一级表单

Selenium自动化测试框架 1.Selenium概述 1.什么是框架? 框架(framework)是一个框子——指其约束性,也是一个架子——指其支撑性。是一个基本概念上的结构,用于去解决或者处理复杂的问题。 框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。 框架,其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别人搭好的舞台,你来做表演。 2.为什么使用框架? 1)自己从头实现太 阅读详情

相关推荐

每日一书,《Selenium3自动化测试实战—基于Python语言》PDF

《Selenium3自动化测试实战——基于Python语言》重要知识点总结如下: 《Selenium3自动化测试实战—基于Python语言》 (1) Python3 编程语言基础精讲 (2) 通过20个例子展示WebDriver API 的使用场景 (3) unittest & pytest 两大单元测试框架全面介绍 (4) 数据驱动模型在项目中的应用 (5) 通过自动化项目串联所有知识点 (6) Jenkins持续集成的安装与配置 (7) appium 移动测试工具的应用 ...

程序员白楠楠的博客 3294

Python自动化测试之Selenium

本课程详细介绍了Selenium Python版本的自动化测试方法和实践,通过本课程的学习你将掌握如下内容:Selenium 测试环境搭建单元测试、生成测试报告、定位元素、WebDriver属性和方法、WebElement属性和方法、操作form表单、操作下拉列表、处理等待、远程测试、Selenium Grid、鼠标事件、键盘事件、调用js、屏幕截图、Selenium IDE、文件上传、设置代理、无界面运行、参数化测试、数据驱动的测试DDT等。

虫师python appium自动化测试书_Selenium3自动化测试实战(基于Python语言)

导语内容提要本书共分14章,第1章介绍了自动化测试相关的基础知识。第2章到第10章是本书的重点,从环境搭建,到WebDriver API介绍,再到单元测试框架的使用,循序渐进地介绍了自动化测试所用到的知识,最后再通过项目将这些知识串联起来。第11章详细介绍了如何使用Jenkins配置自动化测试项目。第12章到第14章介绍了移动自动化测试工具appium的使用。本书的写作目的并不是简单地告诉读者如何...

weixin_35045970的博客 1393

10、Selenium 多表单切换

selenium 多表单切换

南宫柒的博客 303

从原理图到PCB:Cadence Allegro 17.4网表同步全流程详解(含第三方网表配置)

本文详细解析了Cadence Allegro 17.4中从Orcad原理图到PCB布局的网表同步全流程。核心内容包括标准的第一方网表同步步骤,以及针对第三方网表导入时关键的封装库路径配置方法,并提供了常见同步错误的排查思路,帮助工程师高效、准确地完成设计数据传递,确保PCB设计顺利开局。

salt9的博客 654

altium room 布局_ALtium 16相同重复模块PCB布局,复制布局走线

自己做了实际工程以后发现PCB器件名字后缀太长了,所以文章最后写了一下后缀的调整方法。第一种方法:1、建立子原理图如下,文件名CANM 2、之后新建一个顶层文件,文件名TOP,之后design—create sheet symbol form sheet or hdl。选择CANM,并放置到TOP中,如下 3、由于我们要多次调用CANM所以使用repeat命令修改如下: 4、之后根据自己的定义,连...

weixin_39609573的博客 5749

Python selenium网页(form)表单二级定位

弹出框定位里面的元素,注意里面存在class、name相同这个方法就不适用了 driver.find_element_by_class_name('dhx_cell_cont_wins').find_element_by_id('pers_pin_register_id').send_keys('12121') 弹出框定位里面的元素,注意里面存在class、name相同这个方法需要在e...

weixin_45655108的博客 4521

Cadence17.4 Allegro PCB制板(gerber / 光绘)文件输出的顺序及注意点

Cadence Allegro PCB制板文件输出 (gerber 光绘文件输出)

weixin_45331044的博客 1万+

selenium的多表单切换

在网页中,表单嵌套是很常见的情况,尤其是在登录的场景 1、什么是多表单? 实际上就是使用iframe/frame,引用了其他页面的链接,真正的页面数据并没有出现在当前源码中,但是在浏览器中我们看到,简单理解可以使页面中开了一个窗口显示另一个页面 2、处理方法 直接使用id值切换进表单 : driver.switch_to.frame(value)/driver.switch_to_frame(value) 定位到表单元素,再切换进入 : ...

qq_45629649的博客 417

calibration的“前世今生”——从simulink开发到CANape的XCP标定

整体思路 备注: elf可简单的看作为hex和map的集合,其中包括可执行的程序、变量及其对应的地址(simulink生成代码是也可以勾选生成ASAP2的a2l文件,有变量但变量对应的地址为空,只有编译后才分配地址) 定义变量是观测值还是标定值需要在simulink中的数据字典定义变量存储类型,详见simulink系列。 1. 前期准备A2L的制作 安装完成CanApe软件 , 插上CanApe硬件( 如:vector 1640A)。打开A2L编辑软件 ASAP2 Editor(注意不是ASAP2 Vi

IHTY_NUI的博客 1万+

【CAPL实用开发】--- 使用VN1640A测试Busoff快慢恢复

使用VN1640A测试Busoff快慢恢复,包含具体的CAPL代码实现。

LabVIEW、CAPL、python、车载以太网等学习分享,文章正在写 2094

python自动化测试实战 虫师_Selenium3自动化测试实战——基于Python语言

版权页前言第1章 自动化测试基础1.1 分层的自动化测试1.2 适合自动化测试的项目1.3 如何学习UI自动化测试1.4 Selenium简介1.5 appium简介第2章 测试环境搭建2.1 安装Python2.2 安装Selenium2.3 第一个Selenium自动化测试脚本2.4 浏览器驱动第3章 Python基础3.1 Python哲学3.2 输出3.2.1 打印3.2.2 引号与注释3...

weixin_39584571的博客 1732

安装Quartus-II 13 和Modelsim

目录一、Quartus-II安装1.Quartus-II 13下载2.Quartus-II 13安装3.Quartus-II 13注册二、Modelsim安装 实验目的:安装Quartus-II 13 和Modelsim 实验环境:Windows10 参考资料:Quartus-II安装及使用 一、Quartus-II安装 1.Quartus-II 13下载 正点原子官方资料下载 百度网盘下载链接: https://pan.baidu.com/s/1a9d-bq9RZmWrRV542X4IEA 提取码:

qqq080的博客 8627

python自动化测试实战 无涯 pdf下载_SELENIUM 2 自动化测试实战 基于PYTHON语言 PDF 下载...

第1 章 自动化测试基础 . 11.1 软件测试分类 11.2 分层的自动化测试 61.3 什么样的项目适合自动化测试 91.4 自动化测试及工具简述 101.5 Selenium 工具介绍 111.6 前端技术介绍 141.7 前端工具介绍 161.8 开发语言的选...

weixin_39955142的博客 788

【Docker】掌握 Docker魔法:Windows 11 平台上的完美容器部署终极指南

【Docker】掌握 Docker魔法:Windows 11 平台上的完美容器部署终极指南 一文搞懂什么是 Docker?分析容器的工作原理、容器的架构、Docker的优势、使用 Docker的原因。 全程手把手教你Docker的安装与使用,配置阿里云镜像加速、容器常用命令!

寸铁的博客 10万+

069_死区效应对输出电压畸变的补偿思路

死区效应导致逆变器输出电压在过零点出现台阶畸变,引发THD升高。其本质是死区期间续流二极管钳位造成的非线性误差,与电流方向、负载大小、母线电压耦合。补偿需结合前馈(基于电流方向自适应调整偏置)与反馈(抑制残余谐波),关键在于准确判断电流方向(采用滞环滤波避免跳变)、合理设置补偿量(随负载动态调整),并注意补偿位置、极性及限幅防漂移。调试应通过差分探头、FFT频谱等手段验证效果,最终实现全负载范围内的低畸变输出。

2401_88858637的博客 21

python自动化测试实战pdf无涯_【独家发布】Selenium2 Python自动化测试实战 第二版...

Selenium2 Python自动化测试实战 第二版第1 章自动化测试基础.................................................................................................................................... 81.1 软件测试分类.....................

weixin_39567169的博客 486

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

python写脚本实战_selenium自动化实战-基于python语言(二: 编写脚本)

上一篇文章说到显示等待和隐式等待语句,我们继续学习下面的命令方法。8. 定位一组元素这里书上是自己写了一个页面代码,通过访问本地这个页面来举例。但我觉得找一个现有的页面自己琢磨更有意思,而且复杂的页面也会遇到复杂的问题。比如我根据163邮箱登录页面的 “十天内免登录” 复选框写了如下的代码:1 fromselenium import webdriver2 import time34 driver...

weixin_39984578的博客 215

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Selenium WebDriver API 学习笔记(三):浏览器控制

读了虫师《Selenium 2自动化测试实战 基于Python语言》一书,感触颇深,内容非常丰富。现整理下来,供后续学习参考使用。本次主要整理的是元素浏览器控制之二。内容在“Selenium WebDriver API 学习笔记(一):浏览器控制”基础上添加。 9.设置元素等待 ①显式等待:WebDriverWait(driver,poll_fequency=0.5,ignored_excepti...

虫无涯的博客 634

python自动化测试培训课程视频

《Selenium3自动化测试实战——基于Python语言》重要知识点总结如下: (1) Python3 编程语言基础精讲(2) 通过20个例子展示WebDriver API 的使用场景(3) unittest & pytest 两大单元测试框架全面介绍(4) 数据驱动模型在项目中的应用(5) 通过自动化项目串联所有知识点(6) Jenkins持续集成的安装与配置(7) appium 移动测试工具的应用 获取方法 私信回复【软件测试】就可以免费领取了 内容简介 本书共分14章,第1..

weixin_63757190的博客 194

python selenium 处理弹窗_python selenium-webdriver 处理JS弹出对话框(六)

原博文2017-06-06 22:27 −在实际系统中,在完成某些操作时会弹出对话框来提示,主要分为"警告消息框","确认消息框","提示消息对话"三种类型的对话框。 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作。 2.确认消息框...426221相关推荐2019-12-14 21:0...

weixin_39585617的博客 309

selenium自动化测试:4.webdriverAPI webdriver的使用方法(控制浏览器操作)慢慢更新……

selenium自动化测试:4.webdriverAPI——用代码实现对浏览器的操作

土小帽_Tester的博客 686

python selenium 多表单和多窗口切换

一、多表单切换 在Web应用中经常会遇到frame/iframe表单嵌套页面的应用,Frame与Iframe两者可以实现的功能基本相同,不过frame是整个页面的框架,iframe是内嵌的网页元素。WebDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌页面上的元素无法直接定位,这时就需要通过switch_to.frame()方法将元素定位页面切换到frame/i...

chj19891027的博客 580

python表单切换_python与selenium自动化基础-多窗口切换、多表单切换

多窗口切换方法:(1)driver.current_window_handle 获取当前窗口句柄(2)driver.window_handles 获取所有窗口句柄(3)driver.switch_to.window(handle) 切换指定句柄窗口(4)driver.close() 关闭当前的句柄(5)driver.quit() 关闭浏览器例:from seleniu...

weixin_39842475的博客 267

Selenium操作表单切换(内部表单操作)

每个人都有惰性,但不断学习是好好生活的根本,共勉!

感谢阅读 1228

Selenium API高级

1.多表单切换 (1)QQ空间 (2)126邮箱登录 火狐浏览器没有权限,需要在谷歌浏览器上操作,需要下载谷歌对应的版本驱动 http://chromedriver.storage.googleapis.com/index.html 下载完成后放到pycham项目同级目录下即可 2 .弹出框操作 高级搜索 时间 搜索设置 不显示 3.鼠标和键盘操作 手动测试时键...

q18735924674的博客 317
上一篇: 12.Selenium2 自动化测试实战-基于Python语言-定位一组元素
下一篇: 14.Selenium2 自动化测试实战-基于Python语言-多窗口切换
lxting21
博客等级 码龄18年 33粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值