Python+Appium自动化测试(4)-使用weditor进行元素定位
一,weditor的安装与使用
首选需要在电脑上配置好Python环境
下载安装命令如下,加上镜像下载速度更快:
pip install weditor -i https://pypi.tuna.tsinghua.edu.cn/simple启动weditor命令:
python -m weditor此时会打开浏览器新建窗口如下

连接手机。输入adb devices命令,获取手机的设备id
在浏览器editor页面,选择Android,输入手机的设备id,点击Connect按钮。按钮出现绿叶小图标,左侧出现手机页面的截图,说明成功。
ps:手机第一次连接,点击Connect时间会比较久,并且手机上会提示安装ATX与另外一个app,容许安装完成即可。

app切换页面后,点击Dump Hierarchy按钮即可刷新,也可以在左侧app截图区域点击鼠标右键进行刷新。
使用
1,鼠标点击选中左侧截图需要定位的区域后,会在页面中间显示该元素的各种属性。
2,勾选中间 "强制使用XPath" 则会将XPath展示在代码栏,不勾选则代码栏展示的是元素其他属性,如text、resourceId等。
3,右侧下部分Hierarchy,显示app当前页面UI的层级结构。Console为控制台,可来回切换。

4,右侧上部分可以输入代码,进行操作步骤的调试。如:从今日头条的首页-->放映厅-->电影-->喜剧页面,将中间代码栏的代码输入到右侧,点击运行,我们就可以在手机上看到app从首页进入喜剧电影页。

二,遇到的问题
左侧黑屏
点击Connect出现绿叶图标后,发现左侧手机截图黑屏,鼠标又可以在黑屏上是选择页面元素。我们当然不可能靠这样抓瞎来定位元素。于是就去网上查找资料,未找到解决方法,重新启动webitor也没用。于是我尝试在这个界面做各种操作尝试,一顿令人窒息的操作之后......把 “静态/实时开关” 来回切花就成功了。

Python+Appium自动化测试(4)-使用weditor进行元素定位的更多相关文章
- python appium笔记(二):元素定位
#这里的示例是用android来说明的,xpath应该是通用的,resource-id不太清楚,没配过IOS的环境 #环境配置和一些参数的意思不清楚可以看我上一篇python appium笔记(一) ...
- Python+Appium自动化测试(5)-appium元素定位常用方法
对于Android而言,查找appUI界面元素属性的工具有三种:appium desktop,uiautomatorviewer.bat,weditor.之前已经介绍过了weditor的使用,这里我将 ...
- Python+Appium自动化测试(9)-自动选择USB用于传输文件(不依赖appium对手机页面元素进行定位)
一,问题 app自动化测试使用Android真机连接电脑时,通常会遇到两种情况: 1.测试机连接电脑会弹窗提示USB选项,选择USB用于"传输文件",有些手机不支持设置默认USB选 ...
- Python+Appium自动化测试(6)-元素等待方法与重新封装元素定位方法
在appium自动化测试脚本运行的过程中,因为网络不稳定.测试机或模拟器卡顿等原因,有时候会出现页面元素加载超时元素定位失败的情况,但实际这又不是bug,只是元素加载较慢,这个时候我们就会使用元素等待 ...
- Python+Appium自动化测试(13)-toast定位
一,前言 在app自动化测试的过程中经常会遇到需要对toast进行定位,最常见的就是定位toast或者获取toast的文案进行断言,如下图,通过定位"登录成功"的toast就可以断 ...
- python+appium自动化测试(一)-----环境搭建
基础背景: windows7系统 +python3.4版本 环境搭建目标: 使用python编写app自动化测试脚本并成功执行. 搭建步骤: 1.安装python3,安装步骤详见:https:// ...
- Selenium+Python自动化测试实战(2)元素定位
1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事, ...
- RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第七篇【元素定位介绍】
http://blog.csdn.net/deadgrape/article/details/50628113 我想大家在玩自动化的时候最关心的一定是如何定位元素,因为元素定位不到后面的什么方法都实现 ...
- Python+Appium自动化测试(15)-使用Android模拟器(详细)
做APP的UI自动化测试时,我们往往会使用真机跑自动化测试脚本,因为这样才是最真实的使用场景.但前期调试脚本的话,可以先使用模拟器,这样相对更加方便. 不推荐使用Android SDK里自带模拟器,太 ...
随机推荐
- 初次使用maven创建web工程发现只有一个idea目录,src,webapp目录都不见了,解决方案
修bug系列2之 初次使用maven创建web项目的src目录不知所踪 窗外下着下雨,屋内的我学着maven,本以为轻轻松松,没想到还是遇到了bug.好了不说了,来看看我是怎么解决的. 在初次使用ma ...
- 在express中使用ES7装饰器构建路由
在Java的Spring框架中,我们经常会看到类似于@Controller这样的注解,这类代码能够极大的提高我们代码的可读性和复用性.而在Javascript的ES7提案中,有一种新的语法叫做deco ...
- Linux系统环境基于Docker搭建Mysql数据库服务实战
开放端口规划: mysql-develop:3407 mysql-test: 3408 mysql-release: 3409 ps: 1.不推荐使用默认端口-3306,建议自定义端口 2.如果采用阿 ...
- SpringMVC-09-Ajax技术
9. Ajax技术 简介 AJAX=Asynchronous JavaScript and XML (异步的JavaScript和XML) AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网 ...
- pytest测试框架 -- setup和teardown等
一.用例运行级别 1.函数级别(setup.teardown 或 setup_function.teardown_function): 仅对处于同作用域的测试函数有效(该函数定义不在类中,则对非类中测 ...
- spring boot 在框架中注入properties文件里的值(Spring三)
前一篇博客实现了打开第一个页面 链接:https://blog.csdn.net/qq_38175040/article/details/105709758 本篇博客实现在框架中注入propertie ...
- Linux:less and Aix:more
在运维工作中,经常要查询应用日志,有Linux和Aix系统,个人感觉,Linux查询日志用less命令比较方便,Aix查询日志用more命令比较方便,在此总结一下两个命令的使用方法 AIX more命 ...
- oracle之三手工完全恢复
手工完全恢复 3.1 完全恢复:通过备份.归档日志.current log ,将database恢复到failure 前的最后一次commit状态. 3.2 完全恢复的步骤 1)restore: OS ...
- 什么是Lambda架构
一.Lambda架构需求 Lambda架构背后的需求是由于MR架构的延迟问题.MR虽然实现了分布式.可扩展数据处理系统的目的,但是在处理数据时延迟比较严重.实际上如果内存和CPU足够强大,MR也可以实 ...
- 硬核看房利器——Web 全景的实现
作者:凹凸曼 - EC 疫情期间,打破社交距离限制的交互模式被推向前台,为不少行业的传统交易提供了想象的空间. 疫情时期,房地产租售业受到的冲击无疑是巨大的,由于人口流动的限制,需求量大幅减少,无法现 ...