Selenium·自动化基础
date:2018505+2018506 day05+06mor
一.安装环境
1.cmd→pip install selenium

2.将浏览器驱动放入X:\Python27下(如chromedriver.exe放入C:\Python27)(前提是已安装浏览器)

注:浏览器驱动要和浏览器版本相对应
二.Selenium基础
1.控制浏览器


2.查找元素
①.通过元素name方法查找——xxx.find_element_by_name('')



②.通过元素id方法查找——xxx.find_element_by_id('')



③.通过元素css样式方法查找——xxx.find_element_by_css_selector('')



④.通过元素xpath方法查找——xxx.find_element_by_xpath('')【选择代码块右键Copy→Copy Xpath】【长路径 单斜杠;短路径 双斜杠】【除了文本,一切xpath查找的属性前都要加@】



⑤.通过手动书写包含方法查找——xxx.find_element_by_xpath('//a[contains(text(),"")]')


⑥.通过class方法查找——xxx.find_element_by_class_name('')


⑦.通过link_text方法查找——xxx.find_element_by_link_text('')


⑧.同名元素处理——xxx.find_elements_by_XXX

3.selenium操作
①.智能等待——xxx.implicitly_wait(10)
②.消除原有数据——xxx.find_element_by_xpath('').clear()
③.退出 驱动浏览器退出——xxx.quit()
④.关闭当前窗口——xxx.close()
⑤.下拉框操作
#二次查找(先找父类,通过父类找到子元素):

#selenium封装的方法:先导入Select

⑥.获取文本
xxx.find_element_by_xpath().text
⑦.切换框架:xxx.switch_to.frame()
切除框架(切到默认框架):br.switch_to.default_concent()
⑧.鼠标操作:导入需要的库

⑨.弹窗
通知型

需要输入内容型

⑩.多窗口处理

⑪.键盘处理:导入库

⑫.浏览器前进、后退、刷新(封装好的内容,直接使用)
xxx.forward()
xxx.back()
xxx.refresh()
⑬.截图:

⑭.滚动条操作
同步:之前的事情做完了有结果,下件事才开始
br.execute_script()
异步:一起做事情,谁先做完返回结果
br.execute_async_script()
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#滑动到底部
js=“var q=document.body.scrollTop=1000”
#滑动到顶部
js=“var q=document.body.scrollTop=0”
#执行js语句
br.execute_script(js)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#拖动元素到可见位置
ele=br.find_element_by_id('')
br.execute_script("arguments[0].scrollIntoView();",ele)
⑮.Selenium其他写法(不支持link_text)
br.find_element('id','')
Selenium·自动化基础的更多相关文章
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- selenium 自动化基础知识(各种定位)
元素的定位 webdriver 提供了一很多对象定位方法 例如: [ id ] , name , class name , link text , partial link text , tag n ...
- 总结Selenium自动化测试方法(一)自动化测试基础
总结Selenium自动化测试方法 一.自动化测试基础 1.什么样的项目适合自动化测试 ①任务测试明确,不会频繁变动 ②每日构建后的测试验证 ③比较频繁的回归测试 ④软件系统界面稳定.变动少 ⑤需要在 ...
- Selenium2学习-011-WebUI自动化实战实例-009-JavaScript 在 Selenium 自动化中的应用实例之一(赋值)
通常在编写 Selenium 的 WebUI 自动化脚本时,有些元素不易定位元素,或有些元素为隐藏的(此时用 WebElement.getText() 获取其值的时候,返回的结果为空),对日常的 UI ...
- selenium自动化过程中如何操作Flash动画
最近在看python的爬虫框架(scrapy),一个词概括就是:"酸爽"!等把selenium自动化版块讲完后,打算写一写关于scrapy相关的知识,打算从源码角度解析下scrap ...
- python+selenium自动化软件测试(第2章):WebDriver API
2.1 操作元素基本方法 前言前面已经把环境搭建好了,从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可 ...
- Selenium IDE 基础使用教程
Selenium IDE 基础使用教程 简介及安装 Selenium IDE 是一个易于使用的Firefox插件.它提供了一个图形用户界面,可进行脚本录制及导出.其记录的脚本可以被转换成多种编程语言( ...
- Selenium IDE 基础教程
Selenium IDE 基础教程 1.下载安装 a 在火狐浏览其中搜索附件组件,查找 Selenium IDE b 下载安装,然后重启firefox 2.界面讲解 在菜单- ...
- Python2.6.6执行selenium自动化
系统类型: [root@bogon home]# uname -aLinux bogon 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 20 ...
随机推荐
- select2的用法
<link href="../css/select2.min.css" rel="stylesheet" /> <script src=&qu ...
- oracle ora-12514解决办法
原来配置好的数据库监听用plsql登陆报错ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 网上说的改listener.ora 添加如下配置 SID_LIST_LISTENER = ...
- idea 报错 :error:java:Compilation failed:internal java compiler error
当使用Tomcat运行项目时报错 翻译一下是 错误:Java:编译失败:内部Java编译器错误 这样看来更不理解了 其实原因是Java的版本不一致 查看项目的jdk版本是否一致: file----pr ...
- json转数组
- (NSDictionary *)dataArrayFromJson { NSString *filePath = [[NSBundle mainBundle] pathForResource:@& ...
- 算法(第四版)C# 习题题解——1.2
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 这一节内容可能会用到的库文件有 ...
- WinForm中预览Office文件
WinForm预览Office文档 使用WinForm, WPF, Office组件 原理:使用Office COM组件将Word,Excel转换为XPS文档, 将WPF的DocumentViewer ...
- [原]Universal Windows问题:winapifamily问题:WINAPI_PARTITION_DESKTOP问题:WINAPI_PARTITION_APP问题:WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)问题
问题回顾: 我新建的生成dll的vs问题: 此vs项目包含需要GL.h 结果此文件声明的GLint找不到! 进去发现#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITI ...
- vue-update-表单形式复写方法上传图片
handleSave() { const formData = new FormData(); /* eslint-disable */ for (let key in this.dataInfo) ...
- 【文献07】基于MPC的WMR点镇定-极坐标系下和轨迹跟踪
参考: Kuhne F , Lages W , Silva J D . Point stabilization of mobile robots with nonlinear model predic ...
- python dpkt SSL 流tcp payload(从三次握手开始到application data)和证书提取
# coding: utf-8 #!/usr/bin/env python from __future__ import absolute_import from __future__ import ...