自动化测试Xpath元素定位方法

自动化测试Xpath元素定位方法

  • 相对定位

    //div

  • 使用索引定位元素

    //input[4]
    //ul[1]//li[4]


  • 单属性定位: //标签名[@属性名称=值]

    //input[@id=‘fuck’]
    //div[@class=“main”]


自动化测试Xpath元素定位方法



  • 组合属性定位:

    //标签名[@属性名称=值 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[@=‘请输入工号’]

自动化测试Xpath元素定位方法


  • text()

    函数文本定位 —— contains(text(),‘文本内容的一部分‘)
    //a[text()=‘百度搜索’]
    //div[contains(text(),‘通讯录’)] --文本模糊定位

自动化测试Xpath元素定位方法


  • 如果页面存在2个一模一样的元素,只是位置不同
    定位方式如下:从父类开始找,父类还不能唯一确定,继续从父类的父类就找
    //div[@class=“main”]//label[@name=‘fuck’]