1、找到 Android SDK安装路径tools 下面的 uiautomatorviewer.bat,如下截图

2、点击uiautomatorviewer.bat进行启动,左上角一共四个按钮,作用分别是打开本地文件、dump页面、dump压缩格式的页面、保存;启动后点击左上角第三个图标进行真机界面的呈现。

3、uiautomatorviewer.bat 连接真机,获取手机屏幕截图,会出各种报错信息,超时的情况出现较多,连接不稳定,,如截图情况

针对这个情况,我们可以通过wifi连接手机,具体步骤如下:

①用USB线连接上你的Android手机 (输入 adb devices 查看设备是否连接上)

② 打开cmd命令窗口,输入: adb tcpip 5555   

 

启动手机的ADB服务端口(即cmd命令窗口),输入命令: adb shell ifconfig 看下你的手机IP地址,注意是WIFI哈  


④在电脑上输入: adb connect IP地址 就可以通过WIFI连接手机了。

⑤手机wifi连接成功后,在uiautomatorviewer中,点击第二个或第三个图bioat,出现下面截图

弹窗中,可以选择直接连接真机,也可以选择通过wifi连接,为了避免USB和手机连接的不稳定性,所以,我习惯选择红框中 wifi方式连接,连接成功后,出现手机屏幕截图,如下:

注:在wifi连接时,,可能出现下面截图情况:

针对这个问题,网上有很多解决办法,如:①这是android 8.0导致的问题,需要更新 uiautomatorviewer 源码才能解决,但是由于不知道怎么更改源码,所以就更换一个系统版本低一点的手机

不过,我建议先多连接几次试试,如果还连接不到,再将uiautomatorviewer关闭后,重新启动,再连接试试(因为,我出现上面情况,多次连接都失败了,重新启动了uiautomatorviewer,就成功了。。)

Appium+Python自动化 2 定位元素方式的更多相关文章

  1. Appium+python自动化-查看app元素属性

    本文转自:https://www.cnblogs.com/yoyoketang/p/7581831.html 前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道 ...

  2. Appium+python自动化3-定位元素

    3.1常用定位方法讲解 对象定位是自动化测试中很关键的一步,也可以说是最关键的一步,毕竟你对象都没定位那么你想操作也不行.所以本章节的知识我希望大家多动手去操作,不要仅仅只是书本上的知识,毕竟这个我只 ...

  3. appium+python自动化32-android_uiautomator定位进阶版

    前言 上一篇介绍uiautomator的定位方式都是类似这种'new UiSelector().xxx("xxx")',看起非常长,我也记不住,这很不python.于是本篇优化了定 ...

  4. appium+python自动化30-list定位(find_elements)

    前言 有时候页面上没有id属性,并且其它的属性不唯一,平常用的比较多的是单数(element)的定位方法,遇到元素属性不唯一,就无法直接定位到了. 于是我们可以通过复数(elements)定位,先定位 ...

  5. appium+python自动化31-android_uiautomator定位

    前言 appium就是封装android的uiautomator这个框架来的,所以uiautomator的一些定位方法也可以用 text 1.通过text文本定位语法 new UiSelector() ...

  6. appium+python自动化28-name定位

    前言 appium1.5以下老的版本是可以通过name定位的,新版本从1.5以后都不支持name定位了 name定位报错 1.最新版appium V1.7用name定位,报错: selenium.co ...

  7. appium+python自动化34-获取元素属性get_attribute

    获取text # coding:utf-8 from appium import webdriver from time import sleep desired_caps = { 'platform ...

  8. appium+python自动化58-xpath定位

    基本属性定位 以淘宝app为例,定位左上角扫一扫按钮 1.可以通过text文本定位到 //*[@text='text文本属性'] # 定位text driver.find_element_by_xpa ...

  9. Appium+python自动化28-name定位【转载】

    本篇转自博客:上海-悠悠 前言 appium1.5以下老的版本是可以通过name定位的,新版本从1.5以后都不支持name定位了 一. name定位报错 1.最新版appium V1.7用name定位 ...

随机推荐

  1. MYSQL1

    一:对查询就行优化 避免全表查询 1.首先考虑在where及order by 列上建立索引 2.where子句   LIKE  '%abc%' 前置%   引擎放弃使用索引而进行全表扫描 3.wher ...

  2. for 和while循环 if else

    for和 while循环 当你知道循环次数的话就用for循环, 不知道的时候用while循环,while必须要有结束条件 a +=1  等于 a =a+1 for i in  xxx: i:是一个变量 ...

  3. Python OS模块,和Open函数

    https://www.cnblogs.com/ginvip/p/6439679.html

  4. 手动卸载的vs2010

    手动卸载的vs2010: 环境:Win7   卸载工具:IobitUninstaller(绿色版)//个人推荐,比较强大好用按照以下顺序:1.Microsoft .NET Framework 4 框架 ...

  5. 去除编辑器的HTML标签

    去除HTML携带的标签常用函数 string strip_tags(string str); 编辑器存放内容到数据库时p标签会转换成这种<p></p> 需要使用htmlspec ...

  6. python学习Day14 带参装饰器、可迭代对象、迭代器对象、for 迭代器工作原理、枚举对象、生成器

    复习 函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.返回内部函数对象---->  延迟执行, 开放封闭原则: 功能可以拓展,但源代 ...

  7. Excel VBA 连接各种数据库(一) VBA连接MySQL数据库

    本文参考[东围居士]的cnblog博文  Excel.VBA与MySQL交互  在自己机器上调试成功,把调试中遇到的问题一并写出了. 本文主要涉及: VBA中的MySQL环境配置 VBA连接MySQL ...

  8. css入门第一天

    一丶Web标准Web标准不是某一个标准,而是一系列标准的集合,内容与结构与表现形式的分离网页主要有四个部分组成:内容(content),结构(structure), 表现(presentation)和 ...

  9. find 递归/不递归 查找子目录的方法

    1.递归查找(find 命令 是递归遍历文件夹的) 命令:find . -name “*.txt” //当前路径下递归查找以.txt结尾的文件夹 2.不递归查找 find . -name “*.txt ...

  10. flask接收post提交的json数据并保存至数据库

    定义数据模型 # 定义数据模型class User(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(d ...