1、移动端应用,content-des包含“订单号”
xpath=//android.view.View[contains(@content-desc,"订单号:")]
2、移动端应用,如果被点击对象内有文本内容,且唯一的为本内容,如下图
xpath=//android.widget.TextView[@text=\"购物车\"]
xpath=//android.view.View[@content-desc=\"7777777\"]
需要注意的是,xpath的结构是根据元素的class的类型来编写的
3、移动端应用,如果被点击对象没有文本或者ID,则通过相对路径的方式编写
这个元素对应的view数是11,包括0就是第12个view,则xpath可编写为
xpath=//android.view.View/android.view.View[12],这里也需要注意class类型
4、xpath定位中starts-with、contains和text()的用法
starts-with 顾名思义,匹配一个属性开始位置的关键字
contains 匹配一个属性值中包含的字符串
text() 匹配的是显示文本信息,此处也可以用来做定位用
eg //input[starts-with(@name,‘name1‘)] 查找name属性中开始位置包含‘name1‘关键字的页面元素
//input[contains(@name,‘na‘)] 查找name属性中包含na关键字的页面元素
<a href="http://www.baidu.com">百度搜索</a> xpath写法为 //a[text()=‘百度搜索‘] 或者 //a[contains(text(),"百度搜索")]
xpath写法汇总(包含appium、robotframework、selenium)
原文:https://www.cnblogs.com/becks/p/11539566.html