自动化测试Xpath元素定位方法
-
相对定位
//div
-
使用索引定位元素
//input[4]
//ul[1]//li[4]
-
单属性定位: //标签名[@属性名称=值]
//input[@id=‘fuck’]
//div[@class=“main”]
-
组合属性定位:
//标签名[@属性名称=值 and @属性名称=值 and @属性名称=值]
//input[@type=“text” and @placeholder=“请输入注册地址”]
//input[@type=‘submit’][@name=‘fuck’]
//input[@type=‘submit’ or @name=‘fuck’]
-
使用XPATH及属性名称定位元素
元素属性类型:@id 、@name、@type、@class、@tittle、@maxlength
//查找所有input标签中含有type属性的元素
//input[@type]
-
部分属性值匹配
contains(@属性名,‘属性值的一部分‘)
//input[start-with(@id,‘fuck’)] 匹配id以fuck开头的元素,id=‘fuckyou’
//input[ends-with(@id,‘fuck’)] 匹配id以fuck结尾的元素,id=‘youfuck’
//input[contains(@id,‘fuck’)] 匹配id中含有fuck的元素,id=‘youfuckyou’
举例://a[contains(@href, ‘logout’)]
-
使用任意值来匹配属性及元素
//input[@=‘fuck’] 匹配所有input元素中含有属性的值为fuck的元素
//input[@=‘请输入工号’]
- text()
函数文本定位 —— contains(text(),‘文本内容的一部分‘)
//a[text()=‘百度搜索’]
//div[contains(text(),‘通讯录’)] --文本模糊定位
- 如果页面存在2个一模一样的元素,只是位置不同
定位方式如下:从父类开始找,父类还不能唯一确定,继续从父类的父类就找
//div[@class=“main”]//label[@name=‘fuck’]