城市直播房产教育博客汽车
投稿投诉
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

安卓UI自动化工具uiautomator项目实战前准备工作

8月24日 海岸线投稿
  一:环境准备
  硬件设备:windows电脑
  软件:pycharm蓝叠或闪电模拟器SDKmanager
  闪电模拟器下载链接:https:www。ldmnq。com?n6000bdvid11623493887955105097
  二:自动化脚本编写前需要掌握的基础python基础变量变量常用的数据类型(字符串intdictlist)的声明和调用,以及数据了类型间的转换函数(带参函数不带参函数有返回值没有返回返回值)的声明与调用开源库的安装、调用判断语句与for循环2。常用的adb命令
  (1)查看已连接的设备列表:adbdevices
  (2)开启或关闭ADB服务:
  开启:adbstartserver
  结束:adbkillserver
  (3)连接设备:adbconnectIP断开设备:adbdisconnectIP
  如果是USB连接,直接会连接ADB,如果是想通过网络连接(有线或者无线),则需要在同一个局域网,通过设备的ip地址连接即可。
  (4)安装卸载apk
  安装apkadbinstallrapk路径
  常用参数说明:t允许测试包l锁定该应用程序s把应用程序安装到sd卡上g为应用程序授予所有运行时的权限r替换已存在的应用程序,也就是说强制安装d允许进行将见状,也就是安装的比手机上带的版本低
  卸载apkadbuninstallapk包名
  (5)抓取日志logcat
  常用参数说明
  s选项:只显示指定标签的日志;adblogcatsSWVDEC显示SWVDEC标签的日志
  v选项:设置日志的输出格式;adblogcatvthreadtime查看日志输出时间和线程信息
  c选项:清空所有的日志缓存信息;adblogcatc
  d选项:将缓存的日志输出到屏幕上,并且不会阻塞;adblogcatd
  t选项:输出最近的几行日志,输出完退出,不阻塞;adblogcatt5输出日志缓冲区的最近5行获取cpu占用:top
  常用参数说明:
  mnumMaximumnumberofprocessestodisplay。最多显示多少个进程
  nnumUpdatestoshowbeforeexiting。刷新次数
  dnumSecondstowaitbetweenupdates。刷新间隔时间(默认5秒)
  scolColumntosortby(cpu,vss,rss,thr)。按哪列排序
  tShowthreadsinsteadofprocesses。显示线程信息而不是进程获取内存占用:dumpsysmeminfo
  获取指定应用的内存dumpsysmeminfo包名获取应用进程号ps
  (9)从手机中拉取信息到本地电脑上adbpull手机路径本机路径
  从本地电脑推送信息到手机上adbpush本机路径手机路径
  (10)获取当前运行的Activity
  adbshelldumpsysactivityfindstrgrepmFocusedActivity
  (11)adb截图命令:screencap保存图片文件路径
  (12)adb录屏命令:screenrecord保存视频文件路径(默认录制时间和最长录制时间都是180秒)
  常用参数说明
  sizeWIDTHHEIGHT视频的尺寸,如1280720,默认是屏幕分辨率
  bitrateRATE视频的比特率,默认4Mbps
  timelimitTIME录制时长,单位:秒
  三:自动化UI脚本编写流程
  模拟器配置模拟器系统配置
  性能设置选项设置为手机版7201280,如下图所示
  机型设置都一致选择MI9(个别机型可能存在兼容性bug,方便统一解决问题),如下图所示
  其他设置中开启ROOT权限和ADB调试,如下图所示
  然后保存设置,会提示重启系统才会生效,重启系统后,在cmd窗口中,输入:adbdevices,显示如下信息,证明连接成功。
  然后安装我们要测试的apk安装uiautomator(用来做xpath值获取的工具)
  (1)安装uiautomator2库
  pipinstallpreuiautomator2
  pipinstallpillow(如果需要截图,可安装这个库)
  (2)安装atxagent
  init就是所有USB连接电脑的手机上都安装uiautomator2
  pythonmuiautomator2init
  指定手机安装uiautomator2,用mirror
  pythonmuiautomator2initmirrorserialSERIAL
  嫌弃慢的话,可以用国内的镜像
  pythonmuiautomator2initmirror
  最后提示success,代表atxagent初始化成功。
  (3)安装Weditor
  pipinstallUweditor
  安装好之后,就可以在命令行运行weditorhelp确认是否安装成功了。
  Windows系统可以使用命令(weditorshortcut)在桌面创建一个快捷方式,
  如下图所示:
  启动weditor的方式
  方法1。命令行直接输入weditor会自动打开浏览器,输入设备的ip或者序列号,点击Connect即可;
  方法2。桌面上双击WEditor快捷方式即可;
  方法3。命令行中执行pythonmweditoruiautomator常用API
  参考教程https:vic。kim20190520UIAutomator2E79A84E4BDBFE794A8
  截至这里,各种环境已经安装完毕!需求用例熟悉
  我们看2条注册模块的用例:
  用例编号
  模块
  预置条件
  操作步骤
  期望结果
  测试结果
  1hr注册
  网络正常输入正确的账号和密码点击注册
  2。弹出toast,提示注册成功,跳转到登录页面
  2hr注册
  网络正常1。输入已经注册过的账号和密码
  2。点击注册
  2。弹出账号已经注册的toast提示
  拆解操作步骤,结果判断等
  操作步骤:打开app,点击注册按钮,然后定位到账号和密码文本框分别做出对应的操作
  判断:注册成功后,弹出注册成功后,会跳转到登录页面,重复注册只是给出toast提示
  以上是操作步骤和预期结果,在实际工作中,我们还需要在问题出现的时候,截屏或录屏并给开发抓取log,最好还要给出执行用例的时间。
  操作步骤如下
  然后我们用代码实现如下图:importosimporttimeimportuiautomator2asus导入uiautomator2库as是取个别名叫us通过连接实例化拿到设备类driverus。connectusb()通过包名启动app录制屏幕os。system(startadbshellscreenrecordtimelimit60sdcardtest2。mp4)driver。appstart(com。example。wenhaotest)引号内为包名称time。sleep(5)通过xpath定位到注册按钮并点击driver。xpath(〔resourceidcom。example。wenhaotest:idbtn1〕)。click()driver。xpath(〔resourceidcom。example。wenhaotest:idbtn2〕)。click()time。sleep(5)当注册页面的某个xpath出现后,我们通过xpath定位到账号和密码并输入对应的内容,然后点击注册按钮ifdriver。xpath(〔resourceidcom。example。wenhaotest:idregisterbutton〕)。exists:通过xpath定位到账号输入内容driver。xpath(〔resourceidcom。example。wenhaotest:idregisteruser〕)。settext(1kobebrant2)通过xpath定位到密码输入内容driver。xpath(〔resourceidcom。example。wenhaotest:idregistermm〕)。settext(8888888888)通过xpath定位到注册按钮并点击driver。xpath(〔resourceidcom。example。wenhaotest:idregisterbutton〕)。click()硬等待通过登录页面唯一xpath值定位,确认是否跳转,如登录页面有登录按钮通过对应函数获取app弹出的toast内容textContentdriver。toast。getmessage()print(textContent)硬等待time。sleep(5)if(driver。xpath(〔resourceidcom。example。wenhaotest:idbtn1〕)。existsandstr(textContent)注册成功):print(pass)抓取日志os。system(adblogcatt100000C:UsersLENOVODesktoptest1。log)else:print(failed)抓取日志os。system(adblogcatt100000C:UsersLENOVODesktoptest1。log)
投诉 评论 转载

加强高职院校科研团队建设促进地方经济发展摘要:当前很多高职院校的科研能力薄弱,科研成果转化率低,服务地方经济能力弱,主要原因是高职院校对科研团队的建设不够重视,教师的科研能力没有形成合力。高职院校发挥自身职能,服务地……引发顾客在打架的原因有哪些无论在任何公共场所,凡事不要斤斤计较,都要与人和睦相处,这样才能达到放松心情缓解压力的目的,那么引发顾客在KTV打架的原因有哪些?下面由本站帮你介绍一下。人的生理容易处在……我,15年不听劝,花117万云南丽江买房养老,如今肠子都悔青文快乐的小青蛙编辑快乐的小青蛙我叫李文涛,因为年轻时候的一次单位公费旅游,被丽江的气候环境深深吸引,回来以后对这座城市念念不忘,退休后,不听家人劝说,卖了杭州的房子……安卓UI自动化工具uiautomator项目实战前准备工作一:环境准备硬件设备:windows电脑软件:pycharm蓝叠或闪电模拟器SDKmanager闪电模拟器下载链接:https:www。ldmnq。com?n……浅谈视听技术在刑事案件测谎中发挥的作用摘要:随着科学的不断发展,测谎技术运用独特的方式,可以筛选犯罪嫌疑,排除无辜;有助于侦审疑难案件和无头案件;有助于突破犯罪嫌疑人的心理防线;有助于解决口供的矛盾。但对测谎技术应……古代贫穷落后的日本为什么斥巨资建海军学校日本可以说现在是一个非常厉害的国家,而且,日本属于发达国家,日本的经济政治文化科技在目前世界上都是数一数二的程度,那么,其实,在古代的时候,日本也和中国一样的贫穷落后,甚至当时……阿莱感谢外界支持每一个给予我支持的人都像是我的家人和朋友直播吧9月9日讯多特蒙德前锋阿莱最近接受了国际足联采访,并感谢了外界对他的支持。今夏刚刚加盟多特蒙德的阿莱在转会不久后发现自己患有睾丸癌,国际足联主席因凡蒂诺此前为他送上……3。6棕榈2305价格出现回调,利多消息能在下方有力支撑吗?各位投资者大家好!{君子不立危墙之下,绝不逆势而为}今天3。6(周一)新的一周到来,棕榈的价格基本处于震荡偏强的状态,虽然现在存在着回调的压力,但是预计价格仍然会处……贵阳哪家店的肠旺面好吃?蔡家街的肠旺面最早最有名气的不是金牌罗记,而是弯弓街正对面的赵家肠旺面,老一辈人把那儿叫做大坝子!程肠旺老者最初是在北门桥上,八几年搬到过省府路,就是现在水艺天下对面平安保险那……经纬早班车5月LPR今公布美股网络设备巨头重挫近14【国内财经新闻】王毅主持金砖国家外长会晤中国国务委员兼外长王毅19日晚在北京主持金砖国家外长视频会晤。王毅说,小圈子解决不了全球面临的大挑战,小集团适应不了当今世界的大变……1979年邓小平视察黄山,为何罕见与香港女星合影?其远见令人1979年,已是75岁高龄的邓小平同志徒步登上了黄山。期间,小平同志偶遇一行在黄山取景的剧组。一番交谈后,对方提出了合影的请求,这个请求很快被随行的工作人员谢绝,但小平同……万圣节的幽默祝福语精选导读:鬼说他很开心,因为今天是万圣节,他说他很想你,因为你们曾经一起鬼混多年,所以在这个鬼的节日里祝你幸福开心。快跟励志故事网的小编一起来看看为大家精心准备的万圣节的幽默祝福语……
春花组团出道,接下来长沙的春天是这样的(附赏花攻略)英国一只狐狸深夜闯入居民家霸占厨房小憩福建和浙江民富对比,哪个是中国第一民富省,两省农村别墅是亮点生化妊娠是怎么回事?还能怀孕吗?全国有多少医学院校?汪汪队立大功,加一串鸡腿!岗位公布漳州这两单位正在招人!陈香梅22岁嫁飞虎将军,服务过8位美国总统,成邓小平座上宾非摸摸党,双十一买了三部高热度手机曹雪芹的家族被抄没时,一共有多少家财?雍正拿到清单后心都凉了庞贝火山是如何用1次喷发,将2万人变成石像,一夜倾灭整座城的三大航为c919预留了订单空间,至于喊疼的波音,就要看表现了

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁