Appium定位

定位方式

ID定位

content-desc定位

xpath定位

定位工具

Appium desktop定位

每次定位都需要先执行脚本,到达定位控件的上下文。
可参考:https://www.cnblogs.com/Uni-Hoang/p/13734384.html

uiautomatorviewer

uiautomatorviewer是android SDK自带的工具,只适用与android定位。通过截屏并分析XML布局文件的方式,为用户提供控件信息查看服务。该工具位于SDK目录下的tools\bin子目录下。可以看到,它是通过bat文件启动的。

  • 首先要安装SDK,可以在Android Studio下安装SDK,也可以单独安装SDK
    安装后所在目录
    Appium定位

  • 将所在目录配置到PATH环境变量中:E:\software\Android\SDK\tools\bin
    直接启动
    Appium定位
    配置path环境变量后
    Appium定位
    Appium定位

Appium定位

  • 进行定位
    Appium定位
    图中使用ID定位
    Appium定位
def test_getPrice(self):
        self.driver.find_element(MobileBy.ID,"tv_search").click()     # MobileBy继承By
        self.driver.find_element(MobileBy.ID,"search_input_text").send_keys("阿里巴巴")
        self.driver.find_element(MobileBy.ID,"name").click()  # 第一张图片定位
        # 获取价格,转换为float类型进行断言
        assert float(self.driver.find_element(MobileBy.ID, "current_price").text) > 250  # 第二张图片定位

遇到的问题

  • Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException: Remote object doesn‘t exist!
    原来好好的,但是不知道怎么就出现这个。
    Appium定位
    在网上找了很多解决办法,可以试试:
    1、在cmd命令窗口中输入 adb root 即可
    2、重启手机无效
    3、重新把手机拔了再插
    4、重启appuim
    5、重启uiautomatorviewer.bat(尝试了没用)
    6、打开手机开发者权限,将USB调试按钮重新启动就好了
    7、重启模拟器(我使用木木模拟器,重启后可以重新识别)
    大家可以试试看看哪种方式适合自己。

Appium定位

上一篇:大公司企业邮箱如何选择


下一篇:衡量企业邮箱品质,就看这几点