UI case编写
UI case编写过程中,遇到的问题及解决方法
whiteList_
这个作者很懒,什么都没留下…
展开
-
ADB 命令记录
1.手机端开启关闭wifi(自动化脚本常用)关闭:adb shell svc wifi disable开启:adb shell svc wifi enable2.手机开启录屏 (自动化脚本常用)2.1 开启录屏并将视频存在sdcard :adb shell screenrecord /sdcard/xxx.mp4(荣耀系列暂不支持,待调研)2.2 将保存的视频推到PC:adb shell pull /sdcard/xxx.mp4 /home/xxx/xxx2.3 删除sdcard视频:adb原创 2020-05-11 15:57:54 · 258 阅读 · 0 评论 -
tesseract-ocr识别图片文字,辅助测试
1.场景想从UI上抓取“性能狗”悬浮窗的一些性能参数值,传统的UI获取元素的方式无法获取。(性能狗有二次开发的现成接口,但是是商业版,需要花钱)2.问题解决可以借助tesseract-ocr工具,读取图片文字的方式,获取需要的文字;tesseract-OCR是一个开源的OCR引擎,能识别100多种语言,专门用于对图片文字进行识别,并获取文本。但是它的缺点是对手写的识别能力比较差。此时我们就可以先截取app图片,然后对图片上的文字进行读取。3.工具、三方库的安装(脚本环境:mac + pyth原创 2021-07-23 18:37:28 · 619 阅读 · 0 评论 -
扩展unittest参数,辅助测试
背景在利用unittest组织UI脚本时,可能需要在执行时实时传递一些参数到case中,比如设备id、用户账号、密码等等;但在unittest原测试类中,只可传递一个method参数,不方便传递。解决方法可以在测试类B上层添加一个父类A,类A继承unittest.TestCase,同时类A重写__init__构造函数,添加需要的额外参数。# unittest正常调用import unittestclass MyTestCase(unittest.TestCase): def s原创 2021-06-28 14:43:45 · 249 阅读 · 5 评论 -
利用imagehash库比较图片是否一致
1.背景编写视频观看相关case时,需要校验已观看的资源是否显示在“最近观看”列表,且资源封面显示的正确;此时就要校验资源在视频列表的封面、与在“最近列表”的封面是否相同;就是比较两个小图片是否相同。2.解决思路先截取到指定位置的封面图片,然后获取图片哈希值,比较两图片对应的哈希值来判断图片的相似性。3.解决方法截取指定位置图片3.1.1...原创 2021-04-13 16:48:30 · 970 阅读 · 4 评论 -
uiautomator set_text()方法输入失败
1.背景语言选择:python工具选择:https://github.com/openatx/uiautomator2问题:在写登录相关的case时,输入框内键入要输入的内容时不成功,case无法正常执行d(resourceId='xxx').set_text('1234')页面如下:执行set_text()方法时,可以看到是调起键盘了,但输入内容到输入框时,一闪而过,没有输入成功,仍显示默认提示文案。2.解决思路换了几个机型、切换到https://github.com/xiaocon原创 2021-04-07 15:59:21 · 2194 阅读 · 3 评论 -
bugreport辅助调查anr问题
1.背景用例脚本执行过程中,可能会出现一些anr问题,logcat日志中可能提示有关文件存储在了/data/anr文件中;但是/sdcard/data/路径下一般没有,像一加、nova非root手机是看不到相关文件的。2.解决方式此时可以借助adb bugreport查看到相关日志,且可获取到其它相关信息;# device_id 对应手机设备号# /home/xxx/text 对应PC要存储到的路径# 需要是android7.0以上 目前7.0以下机型也较少了adb -s 'device原创 2021-04-08 17:31:13 · 792 阅读 · 0 评论