css方式定位的方法也有很多,相较于xpath更灵活一点,下面就介绍下使用方法(以百度输入框为例)

1、通过tag来定位,可以写成如下:

driver.find_element_by_css_selector('input').click()

这里要说明的是tag为input的必须唯一才能这么写,否则可以用其他方式定位

2、通过id来定位,可以写成如下:

driver.find_element_by_css_selector('#kw').click()

id前面加个#即可,很简单,也可以和tag组合来写:

driver.find_element_by_css_selector('input#kw').click()

3、通过class来定位,可以写成如下:

driver.find_element_by_css_selector('.s_ipt').click()

也很简单,当然也可以和tag组合来写:

driver.find_element_by_css_selector('tag.s_ipt').click()

4、通过父子关系定位,可以写成如下

driver.find_element_by_css_selector('span>input').click()

这里是通过tag来做例子,其实对于父节点和子节点来说都可以各自按照1、2、3来写,中间用>来连接即可,这样更能保证元素的唯一性,比如:

driver.find_element_by_css_selector('span>input#kw').click()

5、还可以通过tag中除了id、class之外的其他属性来定位元素,如输入框通过name属性来定位:

driver.find_element_by_css_selector('input[name="wd"]').click()

属性可以带值,也可以不带,直接写成如下形式:

driver.find_element_by_css_selector('input[name]').click()

6、除了5中所示的形式,还可以对属性的值进行过滤,如下:

name属性的值以w开头

driver.find_element_by_css_selector('input[name^="w"]').click()

name属性的值以d结尾

driver.find_element_by_css_selector('input[name$="d"]').click()

name属性的值包含w字符

driver.find_element_by_css_selector('input[name*="w"]').click()

基本上通过上面的css操作都能够唯一确定一个元素,当然也有特殊情况。这个需要具体问题具体对待。

web自动化测试---css方式定位页面元素的更多相关文章

  1. web自动化测试---xpath方式定位页面元素

    在实际应用中,如果存在多个相同元素,包括属性相同时,一般会选用这种方式,当然如果定位属性唯一的话,也是可以使用的,不过这种方式没有像id,tag,name等容易理解,下面讲下xpath定位元素的方法 ...

  2. 使用CSS选择器定位页面元素

    摘录:http://blog.csdn.net/defectfinder/article/details/51734690 CSS选择器也是一个非常好用的定位元素的方法,甚至比Xpath强大.在自动化 ...

  3. Selenium2(java)定位页面元素 二

    辅助工具: chrome浏览器,F12打开控制台; Firefox浏览器,F12打开控制台; 或者选中要定位的元素右键 安装firefox扩展firebug和firepath; 安装之后F12可调用f ...

  4. 定位页面元素之xpath详解以及定位不到测试元素的常见问题

    一.定位元素的方法 id:首选的识别属性,W3C标准推荐为页面每一个元素设置一个独一无二的ID属性, 如果没有且很难找到唯一属性,解决方法:(1)找开发把id或者name加上.如果不行,解决思路可以是 ...

  5. selenium第三课(selenium八种定位页面元素方法)

    selenium webdriver进行元素定位时,通过seleniumAPI官方介绍,获取页面元素的方式一共有以下八种方式,现按照常用→不常用的顺序分别介绍一下. 官方api地址:https://s ...

  6. selenium webdriver学习(四)------------定位页面元素(转)

    selenium webdriver学习(四)------------定位页面元素 博客分类: Selenium-webdriver seleniumwebdriver定位页面元素findElemen ...

  7. selenium定位页面元素的一件趣事

    PS:本博客selenium分类不会记载selenium打开浏览器,定位元素,操作页面元素,切换到iframe,处理alter.confirm和prompt对话框这些在网上随处可见的信息:本博客此分类 ...

  8. Python+Selenium自动化-定位页面元素的八种方法

    Python+Selenium自动化-定位页面元素的八种方法   本篇文字主要学习selenium定位页面元素的集中方法,以百度首页为例子. 0.元素定位方法主要有: id定位:find_elemen ...

  9. Selenium 定位页面元素 以及总结页面常见的元素 以及总结用户常见的操作

    1. Selenium常见的定位页面元素 2.页面常见的元素 3. 用户常见的操作 1. Selenium常见的定位页面元素 driver.findElement(By.id());driver.fi ...

随机推荐

  1. Linux系统minicom命令详解

    minicom 功能说明:调制解调器通信程序 语 法:minicom [-8lmMostz][-a<on或0ff>][-c<on或off>][-C<取文件>][-d ...

  2. SQL Server 2008 R2 根据WSDL访问WebService

    参考网站:WebService学习整理(一)——客户端三种调用方式整理 自我概括: WebService 通过HTTP通讯,数据以XML格式传输使两个系统进行数据交互 SOAP 是访问协议(注明访问W ...

  3. Python:每日一题007

    题目: 输出 9*9 乘法口诀表. 程序分析: 分行与列考虑,共9行9列,i控制行,j控制列. 个人思路及代码: 第一版: for i in range(1,10): for j in range(1 ...

  4. linux 查看信息-系统&资源

    系统 1.查看内核/操作系统/CPU信息 2.查看操作系统版本 3.查看CPU信息 4.查看计算机名 5.列出所有PCI设备 6.列出所有的USB设备 7.列出加载的内核模块 8.查看环境变量 资源 ...

  5. python中使用OpenCV处理图片

    1.导入OpenCV包 import cv2 2.读取图片 cv2.imread(image_path, mode)        读入函数,包含两个参数,第一个为图片路径及图片名,第二个为读取图片方 ...

  6. Eclipse中代码自动提示功能设置

    Eclipse中代码自动提示功能设置 1 打开eclipse→Windows→Preferences→Java→Editor→Content Assist: 修改Auto Activation tri ...

  7. spoj GSS系列简要题解

    文章目录 GSS1 GSS2 GSS3 GSS4 GSS5 GSS6 GSS7 GSS8 传送门 这个GSSGSSGSS系列全部是跟子段有关的数据结构菜题. 于是来水一篇博客. GSS1 传送门 题意 ...

  8. ABP框架系列之五十四:(XSRF-CSRF-Protection-跨站请求伪造保护)

    Introduction "Cross-Site Request Forgery (CSRF) is a type of attack that occurs when a maliciou ...

  9. Django同步数据库(/manage.py makemigrations) 报错

    新起了环境,创建models.py 内容,想要同步到数据库,执行以下操作时 报错: ./manage.py makemigrations ./manage.py migrate *(第一个步骤为在该项 ...

  10. python_day1 条件语句

    一  流程控制 1.if....else 语句 用法: if  条件: 满足条件执行代码 else: if 条件不满足执行此部分代码 例: a = 10 b = 20 if  a>b : pri ...