一:定位八种方法

  例如:

  二:常见的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++ Socket WSAENOBUFS WSAoverlapped

    WSARecv的时候,投递的接收缓冲区的大小设置为0. 然后手动调用非阻塞recv从缓冲区接受数据,直到WSAEWOULDBLOCK,不然会有很多的buffer被锁住,当客户端的数量达到一定数目时,就 ...

  2. Oracle 组函数count()

    1.count() 函数的参数除了可以是字段值和表达式外,还可以是“ * ”.如果是字段值或表达式,则忽略空值且考虑重复值:如果是“ * ”,则计算所有的行,也包括空值.如果要查询某字段非重复值的个数 ...

  3. bugku - pwn wp

    一. PWN1 题目:nc 114.116.54.89 10001 1.  直接kali里面跑nc 2.ls看看有啥 3.明显有一个flag cat查看一下 搞定 二 . PWN2 题目:给了nc 1 ...

  4. v2??? 重启失败

    v2??? 重启失败, 提示 Authorization not available. Check if polkit service is running or see debug message ...

  5. python函数-迭代器&生成器

    python函数-迭代器&生成器 一.迭代器 1 可迭代协议 迭代:就是类似for循环,将某个数据集内的数据可以“一个挨着一个取出来” 可迭代协议: ① 协议内容:内部实现__iter__方法 ...

  6. 全面掌握Nginx配置+快速搭建高可用架构 一 Nginx的访问控制

    语法 示例 allow 127.0.0.1; deny all; 缺点:局限性 如果通过代理就可以绕过访问限制,限制不准确 解决 1. http_x_forwarded_for 2. 结合geo模块作 ...

  7. 二分图匹配 最大匹配数+最大点覆盖 POJ 1469+POJ 3041

    最大匹配数就等于最大点覆盖,因为在图里面,凡是要覆盖的点必定是连通的,而最大匹配之后,若还有点没有覆盖到,则必定有新的匹配,与最大匹配数矛盾,如果去掉一些匹配,则必定有点没有覆盖到. POJ 1469 ...

  8. C# 基本元素

    一.构成C#的基本元素 注释和空白编译器不会编译,自动忽略:而标记是可以通过编译器编译的. 关键字 (keyword) 官方定义:关键字是类似标识符的保留的字符序列,不能用作标识符(以 @ 字符开头时 ...

  9. vue实现CheckBox与数组对象绑定

    实现需求: 实现一个简易的购物车,页面的表格展示data数据中的一个数组对象,并提供选中商品和全选商品checkbox复选框,页面实时显示选中商品的总金额: 分析: 1:使用v-for循环渲染arra ...

  10. django数据库读写分离

    django数据库读写分离 1. 配置数据库 settings.py文件中 用SQLite: DATABASES = { 'default': { 'ENGINE': 'django.db.backe ...