一:定位八种方法

  例如:

  二:常见的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. uniapp 小程序实现自定义底部导航栏(tarbar)

    在小程序开发中,默认底部导航栏很难满足实际需求,好在官方给出了自定义形式,效果如下: 话不多说,直接上代码 1.组件 custom-tarbar.vue文件 <template> < ...

  2. MAC设置允许任何来源

    在升级了macOS Sierra (10.12)版本后在“安全性与隐私”中不再有“任何来源”选项 接下来,我们就打开终端,然后输入以下命令: sudo spctl --master-disable 输 ...

  3. OPENCV2.46 与2.4.10以上版本的区别

    本人系统环境: CPU:Intel(R)Core(TM) i3-4160 CPU @ 3.60GHz 内存:4G 接两路摄像机,一路海康,一路艾普视达.CPU占有率95%.发现opencv2.4.10 ...

  4. Kafka--windows下简单使用kafka命令

    参考 https://www.cnblogs.com/cici20166/p/9426417.html 启动zookeeper 只需要保证有可用的zookeeper,可以使用kafka内置的,也可以自 ...

  5. 19 02 21 selenium get_attribute的几种用法

    获取元素标签的内容: get_attribute(‘textContent’) 获取元素内的全部HTML: get_attribute('innerHTML') 获取包含选中元素的HTML: get_ ...

  6. pandas中na_values与keep_default_na

    我们在使用pandas读取文件时,常会遇到某个字段为NaN. 一般情况下,这时因为文件中包含空值导致的,因为pandas默认会将 '-1.#IND', '1.#QNAN', '1.#IND', '-1 ...

  7. swift中数据之间的转换

    1.swift 开发 - NSDictionary与NSData互转.Dictionary与Data互转 https://blog.csdn.net/SuperMageHuang/article/de ...

  8. 怎么在一个servlet中实现多个功能 ?如何使一个Servlet处理多个请求?

    自学javaweb一直不知道一个servelt可以有多个功能!看了别人代码才知道这个可以有! 平时你建立servelt时候你会吧doget和dopost这两个勾上,要想实现多个功能,你不必要勾选dog ...

  9. 【LeetCode】最长回文子串-动态规划法

    [问题]给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 : 输入: "babad" 输出: "bab" 注意: ...

  10. 基于云开发开发 Web 应用(四):引入统计及 Crash 收集

    在完成了产品的基础开发以后,接下来需要进行一些周边的工作,这些周边工具将会帮助下一步优化产品. 为什么要加应用统计和 Crash 收集 不少开发者在开发的时候,很少会意识到需要添加应用统计和 Cras ...