博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Robot FrameWork基础学习(四) 元素定位
阅读量:6839 次
发布时间:2019-06-26

本文共 1337 字,大约阅读时间需要 4 分钟。

元素定位

 

对于web自动化测试来说,就是操作页面的各种元素,在操作元素之间需要先找到元素,换句话说就是定位元素。

Selenium2Library提供了非常丰富的定位器:

 

虽然提供了这么多种定位方式,并不是要求我们每一种都要学会,平时主要用的定位方式:id, name,xpath, css

1、id和name定位:

假如把一个元素当作一个的话,id和name可以看作一个人的身份证号和姓名,当然,这些属性值是否唯一要看前端工程师如何设计了。

如百度输入框可以根据id或name进行定位

  input text id=kw   hello,world!

  input text name=wd    hello,reobotframework

  click button id=su

2、xpath定位:

xpath是一种在xml文档中定位元素的语言,因为html可以看做xml的一种实现,所以selenium用户可以使用这种强大语言在web应用中定位元素。

xpath定位元素办法:

  1)xpath的绝对路径:

  xpath = /html/body/div[1]/div[4]/div[2]/div/form/span[1]/input  

  我们可以从最外层开始找,html 下面的body 下面的div 下面的第4 个div 下面的....input 标签。通过一级一级的锁定就找到了想要的元素。

  2)xpath的相对路径:

  绝对路径的用法往往是在我们迫不得已的时候才用的。大多时候用相对路径更简便。

  A.xpath元素本身:

  xpath同样可以利用元素自身的属性,如xpath=//*[@id='kw']

  //表示某个层级下,* 表示某个标签名。@id=kw 表示这个元素有个id 等于kw 。

  当然也可以定制标签名,如:Xpath = //input[@id=’kw1’]

  元素本身,可以利用的属性不局限为id和name,如:

  Xpath = //input[@type=’text’]

  Xpath = //input[@autocomplete=’off’]

  但要保证这些元素可以唯一的识别一个元素。

  B.找上级

  如:

元素的上级属性为:

<form id="form1" class="fm" action="/s" name="f1">
<span class="bg s_ipt_wr">
<input id="kw1" class="s_ipt" type="text" maxlength="100" name="wd" utocomplete="off">

xpath = //span[@class='bg s_ipt_wr']/input

  C:布尔值写法  

  如果一个人的姓名不是唯一的,身份证号也不是唯一的,但是同时叫张三并且身份证号为123 的人却可以唯一的确定一个人。那么可以这样写:

  Xpath = //input[@id=’kw1’ and @name=’wd’]

  

 

转载于:https://www.cnblogs.com/yu2000/p/7141769.html

你可能感兴趣的文章
UOJ46. 【清华集训2014】玄学
查看>>
调整屏幕亮度,调整字体大小
查看>>
js解决EasyUI页面渲染速度慢问题(Mask遮罩)
查看>>
jq 切换功能toggle
查看>>
Oracle-04:DDL语言数据表的操作
查看>>
redis中的order set 有序集合
查看>>
操纵声卡
查看>>
Win32编程day04 学习笔记
查看>>
MultipartFile(文件的上传)--CommonsMultipartResolver
查看>>
MongoDB之bson的介绍
查看>>
PostgreSQL 安装配置 (亲测可用)
查看>>
[CQOI2010]扑克牌
查看>>
WEB Application Development Integrator : 应用设置
查看>>
Revit API导出GBXML
查看>>
Android实现ListView圆角效果
查看>>
Python--day64--内容回顾
查看>>
润乾V5手机报表说明文档
查看>>
Unix系统介绍
查看>>
照片切换
查看>>
求矩阵的局部极大值(15)
查看>>