Selenium+Python3的web自动化测试(三)
时间:2020-01-09
本文章向大家介绍Selenium+Python3的web自动化测试(三) ,主要包括Selenium+Python3的web自动化测试(三) 使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文章内容参考了白夜黑羽教python的教程,出处为http://www.python3.vip/doc/tutorial/selenium/01/
感谢上方大佬!
所整理的正文如下:
首先,在搭建好Selenium+Python3的环境基础上,测试要点如下:
1.切入html内嵌的html中(测试页面http://f.python3.vip/webauto/sample2.html)
1 #先根据源码中内嵌html的属性值(id或name),进入这个内嵌的html,进行操作 2 wd.switch_to.frame('frame1') 3 4 #进入后的操作,例如根据class name 选择元素,返回一个列表 5 elements = wd.find_elements_by_class_name('plant') 6 for element in elements: 7 print(element.text) 8 9 #操作结束后要返回到主html,进行其他操作 10 wd.switch_to.default_content() 11 wd.find_element_by_id('outerbutton').click() 12 wd.quit()
2.点击主html内的链接,切换到新的窗口(测试页面http://f.python3.vip/webauto/sample3.html)
#首先在前面要有一个click操作,打开一个新的页面 for handle in wd.window_handles: wd.switch_to.window(handle) if 'Bing' in wd.title: break #wd.window_handles包含了打开的窗口中所有网页的标号(类似ID的)信息,称为句柄 #wd.switch_to.window(handle)是进入每一个窗口,检查其属性(可以是标题栏,地址栏) #通过判断找到所需窗口后,跳出循环,然后在for循环外,对这个所需窗口进行操作 #返回主html的方法1.如同刚才,用handle判断回去;2.事先保存主html的句柄,最后返回 #事先保存 mainWindow = wd.current_window_handle #最后返回 wd.switch_to.window(mainWindow)
3.选择框的点击--radio框(测试页面http://f.python3.vip/webauto/test2.html)
# 获取当前选中的元素(缺省选择) element = wd.find_element_by_css_selector('#s_radio input[checked=checked]') print('当前选中的是: ' + element.get_attribute('value')) #点击选小雷老师 wd.find_element_by_css_selector('#s_radio input[value="小雷老师"]').click() #源码中checked="checked"表示这个是默认选项
4.选择框的点击--checkbox框
# 先把已经选中的选项全部点击一下,确保所有选项都是未选状态 elements = wd.find_elements_by_css_selector('#s_checkbox input[checked="checked"]') for element in elements: element.click() # 再点小雷老师 wd.find_element_by_css_selector("#s_checkbox input[value='小雷老师']").click()
5.选择框的点击--select框(有专门的类提供操作方法)
"""Select单选框""" #不管原来选的是什么,直接用Select方法选择即可。例如,选择示例里面的小雷老师 # 导入Select类 from selenium.webdriver.support.ui import Select # 创建Select对象 select = Select(wd.find_element_by_id("ss_single")) # 通过 Select 对象选中小雷老师 select.select_by_visible_text("小雷老师") """Select多选框""" #要选中某几个选项,要注意去掉原来已经选中的选项。例如,我们选择示例多选框中的 小雷老师 和 小凯老师 # 导入Select类 from selenium.webdriver.support.ui import Select # 创建Select对象 select = Select(wd.find_element_by_id("ss_multi")) # 清除所有 已经选中 的选项 select.deselect_all() # 选择小雷老师 和 小凯老师 select.select_by_visible_text("小雷老师") select.select_by_visible_text("小凯老师") """Select主要方法及简单说明""" #根据选项的 value属性值 ,选择元素。比如<option value="foo">Bar</option> s.select_by_value('foo') #根据选项的 次序 (从1开始),选择元素 select_by_index #根据选项的 可见文本 ,选择元素。比如<option value="foo">Bar</option> select_by_visible_text('Bar') #根据选项的value属性值, 去除 选中元素 deselect_by_value #根据选项的次序,去除 选中元素 deselect_by_index #根据选项的可见文本,去除 选中元素 deselect_by_visible_text #去除 选中所有元素 deselect_al
原文地址:https://www.cnblogs.com/RuiRuia/p/12172015.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 爬取数据缺失的补坑,Python数据爬取的坑坑洼洼如何铲平
- 如何开发跨框架的组件
- SpringBoot系列之异步任务@Async使用教程
- 深入k8s:k8s部署&在k8s中运行第一个程序
- Java是如何实现Future模式的?万字详解!
- Tensorflow基础入门十大操作总结
- Django个人博客,三小时带你入门Django框架
- 微信公众号文章采集工具,可采集文章文字内容信息及图片
- Python打包GUI界面组件汇总,Tkinter(TK)实例代码
- 知了超细讲解Django打造大型企业官网学习记录,02diango url 笔记
- 直播卖货小程序源码中,商品分类页面是如何实现的
- python requests.session验证码登录应用实战,爱站关键词挖掘采集
- 【淘宝】python的淘宝秒杀抢购下单源码参考
- Python素材下载爬虫,ui素材下载爬取采集源码
- Python与seo的应用,sitemap.xml文件制作工具源码