Selenium-WebDriverApi接口
webdriver获取元素的18种方式: 1、单数模式8 种
id定位模式
element = driver.find_element_by_id('i1')
element.send_keys('UI 自动化')
print(element)
class 定位
element= driver.find_element_by_class_name('classname')
element.send_keys('你猜吧') name定位
element= driver.find_element_by_name('name')
element.send_keys('你猜吧') css定位
element= driver.find_element_by_css_selector('input[placeholder="请通过CSS SELECTOR定位元素"]')
element.send_keys('shenjing') xpath定位
element= driver.find_element_by_xpath("//*[@id='basebody']/div/div[1]/div[6]/input")
element.send_keys('shenjing') LINKTEXT 超链接文案 element= driver.find_element_by_link_text("跳转大师兄博客地址")
element.click() 模糊 匹配
driver.execute_script("window.scrollTo(0,0);") #执行js
element = driver.find_element_by_partial_link_text("跳转大师")
element.click() TAGNAME
element = driver.find_element_by_tag_name("input") #返回获取的第一个
element.send_keys("PPPP") 2、复数模式8 种
element = driver.find_elements_by_tag_name("input")[1] #返回的是相同的筛选条件筛选结果的list
print(element)
element.send_keys("今天!!!")
...... 3、底层实现2种
element = driver.find_element('By.ID','[id="i1"]')
element.send_keys('UI 自动化') 这18种调用方式最常用的是css和xpath 其他的都不常用 窗口操作 WebDriverApi接口:
webdriver获取元素的18种方式: 1、单数模式8 种
id定位模式
element = driver.find_element_by_id('i1')
element.send_keys('UI 自动化')
print(element)
class 定位
element= driver.find_element_by_class_name('classname')
element.send_keys('你猜吧') name定位
element= driver.find_element_by_name('name')
element.send_keys('你猜吧') css定位
element= driver.find_element_by_css_selector('input[placeholder="请通过CSS SELECTOR定位元素"]')
element.send_keys('shenjing') xpath定位
element= driver.find_element_by_xpath("//*[@id='basebody']/div/div[1]/div[6]/input")
element.send_keys('shenjing') LINKTEXT 超链接文案 element= driver.find_element_by_link_text("跳转大师兄博客地址")
element.click() 模糊 匹配
driver.execute_script("window.scrollTo(0,0);") #执行js
element = driver.find_element_by_partial_link_text("跳转大师")
element.click() TAGNAME
element = driver.find_element_by_tag_name("input") #返回获取的第一个
element.send_keys("PPPP") 2、复数模式8 种
element = driver.find_elements_by_tag_name("input")[1] #返回的是相同的筛选条件筛选结果的list
print(element)
element.send_keys("今天!!!")
...... 3、底层实现2种
element = driver.find_element('By.ID','[id="i1"]')
element.send_keys('UI 自动化') 这18种调用方式最常用的是css和xpath 其他的都不常用 窗口操作 # 返回当前操作的浏览器句柄
driver.current_window_handle # 返回所有打开server的浏览器句柄
driver.window_handles
以上两个用作切换浏览器的tab时封装在pyse中 #获取当前浏览器的大小
driver.get_window_size() #通过像素设置浏览器的大小
driver.set_window_size('width','height') #获取当前窗口针对于windows的位置的坐标x,y
driver.get_window_position(20,20) #最大化当前窗口,不需要任何参数
driver.maximize_window() 截取图片
1、 获取当前页面的二进制图片数据,需要自己去写入文件
driver.get_screenshot_as_png() 2、as_png的上层封装,只需要传入图片名称自动写成图片
driver.get_screenshot_as_file('fileName.png') 3、# element截取
element.screenshot() 关闭和退出
# driver.quit() #关闭所有webdriver的页面
# driver.close() #关闭当前页面 执行javascript语句
driver.execute_script('window.scrollTo(100,400);') cookie操作
根据cookiekey,获取cookie信息
cookie = driver.get_cookie('key') 获取所有的cookie信息
cookies = driver.get_cookies() #添加cookie,严格按照格式添加,cookie的name是key,value是值
driver.add_cookie({'name':'fuck','value':''}) #删除所有 cookie信息
driver.delete_all_cookies() #根据key删除对应的cookie
driver.delete_cookie('fuck') 浏览器操作
1、driver.refresh() 刷新
2、driver.forward() 前进
3、driver.back() 后退
ElementApi接口
element.get_attribute('style') #根据标签属性名称获取value
element.send_keys() #想输入框框中输入字符串如果file类型,可以输入文件的绝对路径上传
element.clear() #清楚文本内容
element.click() #鼠标点击操作
element.is_displayed() #返回元素是否课件 True or False
element.is_selected() #返回原色是否被选中 True or False
elemen.screenshot() 截图
# 通过属性名称获取属性
element.get_property('id')
# 返回标签元素的名字
element.tag_name
# 获取当前标签的宽和高
element.size
# 获取元素的文本内容
element.text
# 模仿回车按钮 提交数据
element.submit()
常见异常: NoSuchElementException:没有找到元素 NoSuchFrameException:没有找到iframe NoSuchWindowException:没找到窗口句柄handle NoSuchAttributeException:属性错误 NoAlertPresentException:没找到alert弹出框 ElmentNotVisibleException:元素不可见 ElementNotSelectableException:元素没有被选中 TimeoutException:查找元素超时
Selenium-WebDriverApi接口的更多相关文章
- Selenium学习之==>WebDriverApi接口详解
浏览器操作 driver.back() # 后退 driver.forward() # 前进 driver.refresh() # 刷新 窗口操作 driver.get_window_size() # ...
- Selenium:WebDriverApi接口详解
浏览器操作 # 刷新 driver.refresh() # 前进 driver.forward() # 后退 driver.back() Cookie操作 # 根据cookieKey,获取cookie ...
- selenium之webdriverAPI接口详解
1. 浏览器操作 driver.maximize_window() #最大化窗口driver.execute_script('window.scrollTo(0,0);') #滚动窗口到最上面driv ...
- Java +selenium Navigation接口介绍
Navigation接口主要实现对浏览器的前进.后退.打开网址.刷新当前页面等操作的. void back():就是操作当前页面后退,相当于网页的后退按钮. void forward():就是操作当前 ...
- Java + selenium Timeout接口用法介绍
上一篇介绍了关于如何启动浏览器的方法.这篇文章要介绍一下,上一篇代码中关于等待时间的接口方法,代码如下: driver.manage().timeouts().pageLoadTimeout(5, T ...
- ui自动化---WebDriverApi接口
一.webdriver client原理 当测试脚本启动Chrome的时候,selenium-webdriver 会首先在新线程中启动Chrome浏览器.启动后selenium-webdriver会将 ...
- Selenium各种工具比较
Selenium 1.0 Selenium 1.0是第一个基于浏览器的开源自动化测试工具.它可以使用所有支持http库的编程语言,也可以运行在所有支持javascript的浏览器上.当然它 也有它的缺 ...
- python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)
简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试. 什么是接口测试 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统 ...
- 自动化测试Java一:Selenium入门
From: https://blog.csdn.net/u013258415/article/details/77750214 Selenium入门 欢迎阅读Selenium入门讲义,本讲义将会重点介 ...
随机推荐
- IT经理工作职责
IT经理工作职责: 1. 管理公司信息技术以及计算机系统. 2. 确保公司信息技术是可访问的并且配备了现有的可用的硬件和软件. 3. 监控并且维护公司信息技术并确保能够得到最大化的使用 ...
- 七、Vue Cli+ApiCloud
一.api.js (参考) 顶部注释: 底部注释: 二.导入 效果: 继续使用: 运行环境:用APP打开,浏览器没有api对象,只有APP运行环境才有API对象 代码如下: <template& ...
- windows10 mysql主从复制配置
注意:mysql主从复制,主从版本要一致! 生手永远在学习的路上,为了学习mysql主从复制,实现读写分离,于是在本地安装多个mysql实例来进行验证. 也因此有了下面的笔记,一来自我总结一下经验,二 ...
- zabbix监控,微信报警
微信告警 访问这个地址创建企业微信 https://work.weixin.qq.com/
- CH5104 I-country[线性DP+分类讨论]
http://contest-hunter.org:83/contest/0x50%E3%80%8C%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E3%80%8D%E4%B ...
- Acwing-121-赶牛入圈(二分, 二维前缀和,离散化)
链接: https://www.acwing.com/problem/content/123/ 题意: 农夫约翰希望为他的奶牛们建立一个畜栏. 这些挑剔的畜生要求畜栏必须是正方形的,而且至少要包含C单 ...
- 【51nod1220】约数之和
题目 d(k)表示k的所有约数的和.d(6) = 1 + 2 + 3 + 6 = 12. 定义S(N) = ∑1<=i<=N ∑1<=j<=N d(i*j). 例如:S(3) ...
- SpringMvc (注解)中的上传文件
第一步:导入commons-fileupload-1.3.1.jar 和commons-io-2.2.jar 架包 第二步:在applicationContext.xml中 配置 <bean i ...
- jquery text选择器 语法
jquery text选择器 语法 作用::text 选择器选取类型为 text 的 <input> 元素.大理石平台检定规程 语法:$(":text") jquery ...
- maven项目创建4
运行maven项目,首先要不最根项目添加到maven本地仓库,执行 项目-->右键-->Run as-->Maven install 注:创建war包项目,本地测试,创建index ...