美文网首页
appium元素定位

appium元素定位

作者: 柱柱007 | 来源:发表于2018-11-23 16:58 被阅读0次

    元素定位

    pp自动化测试过程中最重要一个环节就是元素定位,只有准确定位到了元素才能进行相关元素的操作,如输入、点击、拖拽、滑动等

    元素定位方式

    id

    Appium中使用 find_element_by_id() 方法来进行id定位。

    name

    根据name进行定位,对于android来说,就是text属性

    使用 find_element_by_name() 方法来进行name定位, 由于text稳定性不是很好,所以appium 1.5开始废弃了该方法。

    class

    classname定位是根据元素类型来进行定位,但是实际情况中很多元素的classname都是相同的,一般情况下如果有id就不必使用classname定位。

    使用find_element_by_class_name() 方法来进行class定位

    List定位

    List定位首先是使用find_elements_by_XX获取一组相同的class属性的元素,然后使用数组下标来区分标记不同元素进行相关操作。

    相对定位

    相对定位是先找到该元素的有对应属性的父元素节点,然后基于父元素进行元素定位。

    Xpath定位

    xpath定位是一种路径定位方式,主要是依赖于元素绝对路径或者相关属性来定位,但是绝对路径xpath执行效率比较低(特别是元素路径比较深的时候),一般使用比较少。通常使用xpath相对路径和属性定位。

    H5页面元素定位

    Uiautomator定位

    UIAutomator元素定位是 Android 系统原生支持的定位方式,虽然与 xpath 类似,但比它更加好用,且支持元素全部属性定位.定位原理是通过android 自带的android uiautomator的类库去查找元素。 Appium元素定位方法其实也是基于Uiautomator来进行封装的。    使用方法 find_element_by_android_uiautomator() 可以运用UiAutomator元素定位。

    id定位:  根据元素的resource-id属性来进行定位

    eg:driver.find_element_by_android_uiautomator('newUiSelector().resourceId("xxx")').send_keys('xx')

    text定位:根据元素的text属性值来进行定位

    eg:driver.find_element_by_android_uiautomator\('new UiSelector().text("xx")').send_keys('xxx')

    class定位:

    eg:driver.find_element_by_android_uiautomator\ ('new UiSelector().className("xx")').send_keys('xx')

    相关文章

      网友评论

          本文标题:appium元素定位

          本文链接:https://www.haomeiwen.com/subject/adkvgftx.html