一:定位八种方法

  例如:

  二:常见的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. 精简总结redis/rabbitmq/zookeeper在linux centos7上的安装

    因为本博主之前已经写过了相关的一些安装及集群,可以参考前面的记录,但是由于博最近更换了VM14和centos7,为了适应这些环境,所以后续会逐渐重新搭建相关环境,并对之前的安装思路进一步精简梳理,以期 ...

  2. Redis 详解 (三) redis的五大数据类型详细用法

    目录 1.string 数据类型 2.hash 数据类型 3.list 数据类型 4.set 数据类型 5.zset 数据类型 6.系统相关命令 7.key 相关命令 我们说 Redis 相对于 Me ...

  3. Hash!

    Panda一个字符串是否是另一个字符串的子串 #include<bits/stdc++.h> using namespace std; const int mod=998244353,tt ...

  4. 057-while循环

    <?php $x=1; //初始化变量 while($x<=5){ //执行while循环 echo "$x<br />"; $x++; } ?>

  5. plsql和navicat连接远程oracle(易错点)

    plsql和navicat连接远程oracle,只需要安装oracle客户端即可.注意此处是oracle客户端(Instant Client),并不是oracle数据库. oracle客户端下载地址: ...

  6. 分享一个php加密字符串类。

    class base64{ /** * 加密字符串 * @access static * @param string $data 字符串 * @param string $key 加密key * @r ...

  7. c# 多张图片合成一张图片

    using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System. ...

  8. SPOJ ANARC05H 计数DP

    给定一个数字串,问有多少种拆分方法,题目所谓的拆分,就是分成若干个子块,每个块的和 即为各个数字相加,当前块的和一定要小于等于后面的块的和 比如1117  就有这些[1-117], [1-1-17], ...

  9. 吴裕雄--天生自然C++语言学习笔记:C++ 多态

    多态按字面的意思就是多种形态.当类之间存在层次结构,并且类之间是通过继承关联时,就会用到多态. C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数. 下面的实例中,基类 Sh ...

  10. vue小练习--音乐播放器

    1 首先建一个文件夹 放几首歌曲 2 看代码 1)基本版本 <!DOCTYPE html> <html lang="zh-CN"> <head> ...