一:定位八种方法

  例如:

  二:常见的webdriver方法

  1.浏览器相关:(打开浏览器先导入webdriver模块)

  (1)set_window_size(480,800)调整浏览器宽高大小

  (2)maximize_window()浏览器最大化

  (3)back()向后

  (4)forward()向前

  (5)refresh()刷新

  (6)close()关闭当前浏览器

  (7)quit()关闭所有浏览器

  (8)js = "window.scrollto(300,200)" #300表示左边距,200表示上边距

  (9)浏览器属性(句柄)

  current_window_handle 当前页面的句柄

  window_handles 当前所有的句柄

  (10)switch_to_window() 切换窗口(一般通过句柄切换)

  2.文本按钮操作相关:

  (1)send_keys()输入文本

  (2)clear()清除文本

  (3)click()点击按钮

  (4)submit()类似输入文本后回车

  (5)size返回元素的尺寸

  (6)text获取文本

  (7)get_attribute(type)获取属性值

  3.鼠标相关

  (1)context_click()右击

  (2)double_click()双击

  (3)drag_and_drop()拖动

  (4)move_to_element()鼠标悬停

  (5)perform()执行

  4.等待相关

  (1)implicitly_wait()隐式等待,灵活性好

  (2)time.sleep()等待

  5.复选框相关

  6.下拉框处理

  (1)select模块定位

  from selenium.webdriver.support.select import Select

  #导入select模块

  Select提供了三种选择方法:

  select_by_index(index) ——通过选项的顺序,第一个为 0

  select_by_value(value) ——通过value属性

  select_by_visible_text(text) ——通过选项可见文本

  Select提供了四种方法取消选择:(只能取消选择多选选项)

  deselect_by_index(index)

  deselect_by_value(value)

  deselect_by_visible_text(text)

  deselect_all()

  (2)二次定位(基本思路,先定位 select 框,再定位 select 里的选项)

  7.iframe相关

  (1)switch_to.frame()选择一个frame---只能用id或name定位frame

  (2)假如iframe没有可定位的id或name那么可以通过xpath先定位到iframe,再将对象传给switch_to.frame():如下

  iframe_xpath=driver.find_element_by_xpath('//*[@class="if"]')

  driver.switch_to.frame(iframe_xpath)

  .......

  (3)switch_to.default_content()取消选择一个frame(跳回最外层的页面)

  switch_to.parent _content()取消选择一个frame(跳出当前frame)

  8.弹窗相关

  (1)switch_to_ #确定

  (2)switch_to_ #取消

  (3)browser.switch_to_.text #获取弹框信息

  9.调用selenium下的by库里的By模块

  (1)先导库:from selenium.webdriver.common.by import By

  (2)再定位元素:driver.find_element(By.ID,'kw')

  10.数据精度调整,保留小数位数

 

python中selenium自动化常用关键字的更多相关文章

  1. python selenium自动化常用关键字

    工具安装: 1.安装python 2.安装selenium库(dos命令下进入selenium-2.53.2存放路径,执行pip install selenium-2.53.2) 3.将浏览器驱动放到 ...

  2. Python之selenium自动化PART1

    本文适合有经验的测试童鞋 一.Selenium自动化测试环境搭建 1.cmd --- pip install selenium==2.53.0 (如果selenium后面不跟==,表示默认安装最新版本 ...

  3. Python中Selenium模块的使用

    目录 Selenium的介绍.配置和调用 Selenium的配置 Selenium的调用 Selenium的使用 定位 定位元素的使用 定位下拉标签元素 在iframe框架之间切换 上传文件 Webd ...

  4. Python爬虫、自动化常用库&帮助文档URL

    一.Python下载地址 Windows终端Cmder.exe下载--->http://cmder.net/ Python下载(Windows)        ---> https://w ...

  5. python中selenium操作下拉滚动条方法汇总

    UI自动化中经常会遇到元素识别不到,找不到的问题,原因有很多,比如不在iframe里,xpath或id写错了等等:但有一种是在当前显示的页面元素不可见,拖动下拉条后元素就出来了. 比如下面这样一个网页 ...

  6. 在Python中进行自动化单元测试的教程

    From: https://www.jb51.net/article/64119.htm 一.软件测试 大型软件系统的开发是一个很复杂的过程,其中因为人的因素而所产生的错误非常多,因此软件在开发过程必 ...

  7. Python中的一些常用模块1

    OS模块,sys模块,time模块,random模块,序列化模块 os模块是与操作系统交互的一个接口 OS模块简单的来说是一个Python的系统编程操作模块,可以处理文件和目录这些我们日常手动需要做的 ...

  8. python中selenium操作下拉滚动条方法

    场景:在当前显示的页面元素不可见,拖动下拉条后元素就出来了. 解决方法: 在python中有几种方法解决这种问题,简单介绍下,给需要的人: 方法一)使用js脚本直接操作,方法如下: #将页面滚动条拖到 ...

  9. 超详细!盘点Python中字符串的常用操作

    在Python中字符串的表达方式有四种 一对单引号 一对双引号 一对三个单引号 一对三个双引号 a = 'abc' b= "abc" c = '''abc''' d = " ...

随机推荐

  1. c++输出哈夫曼编码

    #include<iostream> #include<string> using namespace std; struct huffTree { int parent; i ...

  2. arduino通信问题的学习与解决

    我想实现的是,我用电脑在串口监视器上输入一个字符串,arduino能识别这个字符串中的每一个字符并在相应的串口上给出相应的高低电平以驱动舵机,比如输入L1,RS,功能是左手腕舵机逆时针旋转90°,然后 ...

  3. Springboot跨域 ajax jsonp请求

    SpringBoot配置: <dependency> <groupId>org.springframework.boot</groupId> <artifac ...

  4. 135-PHP final类和方法都是不可被继承或覆盖的

    <?php final class final_class{ //定义final修饰的类 } class myclass extends final_class{ //试图继承final修饰的类 ...

  5. hdu 1251 统计难题 前缀出现次数

    统计难题 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131070/65535 K (Java/Others)Total Submi ...

  6. Django实现websocket

    django实现websocket大致上有两种方式,一种channels,一种是dwebsocket.channels依赖于redis,twisted等 一 dwebsocket 1 Django实现 ...

  7. main:处理命令行选项

    #include<iostream> #include<stdlib.h> using namespace std; int main(int argc, char** arg ...

  8. 【数据库】Function&Procedure&Package

    Function/Procedure都是可独立编译并存储在数据库中的,区别是Function有返回值. Package则是数据和过程.函数的集合体. CREATE PROCEDURE dorepeat ...

  9. Banner信息收集和美杜莎使用(9.26 第十二天)

    Banner信息收集 Banner信息,欢迎语,在banner信息中可以得到软件开发商.软件名称.版本.服务类型等信息,通过这些信息可以使用某些工具直接去使用相对应的exp去攻击 前提条件:需要和目标 ...

  10. WebFlux系列(十二)MongoDB应用,新增、修改、查询、删除

    #Java#Spring#SpringBoot#Mongo#reactor#webflux#数据库#新增#修改#查询#删除# Spring Boot WebFlux Mongo数据库新增.删除.查询. ...