安卓自动化
elsa^-^yxy
这个作者很懒,什么都没留下…
展开
-
用户点击延迟的配置语句【click_post_delay】被弃用了,怎么解决?
运行自动化脚本的时候,出现许多警告信息。分析后,发现点击延迟配置click_post_delay的语句被弃用了,即后期版本的uiautomator2不再支持。d.click_post_delay = 2 # 用户每次点击后延迟2s查找github文档说明,原来全局配置已大部分集中到d.settings中。要实现上述功能,可使用语句:# 配置点击前延时0.5s,点击后延时1sd.settings['operation_delay'] = (.5, 1)注:...原创 2020-07-24 11:53:34 · 726 阅读 · 0 评论 -
【uiautomator2】验证toast弹框失败,如何解决
相同的代码,在本地电脑执行正确。换了一台电脑执行,验证toast弹框频频报错。打印log后发现toast居然有缓存(无语。。。。。)使用下面语句,在验证成功后及时清除缓存,就能正常执行了# clear cached toastd.toast.reset()注:文章内容主要是记录学习过程中遇到的一些问题,以及解决方法。留个记录,同时分享给有需要的人。如有不足之处,欢迎指正,谢谢!...原创 2020-07-24 11:02:26 · 866 阅读 · 0 评论 -
自动化测试 python-uiautomator2 怎么模拟键盘上的检索键
测试页面搜索功能,编写脚本的时候,发现键盘上的检索键定位不到。尝试过查到的好几种方法,都无法定位。比如下面这个方法,定位不到d.send_action('search')又使用下图的方式,页面显示结果还是不对。d.press('search')后来想到,检索键还可以使用ENTER键,可能这个可以试试。于是修改为如下代码:d(text='点击输入查询名称').send_keys('查询信息')d.press('enter')终于页面出现正确的检索数据了。..原创 2020-06-18 13:36:43 · 2130 阅读 · 0 评论 -
Python random模块sample、randint、shuffle、choice随机函数概念和应用(转)
在类似发布商品的页面,经常会有“是”,“否”的选择项。在自动化编程的时候,怎么能随机的选择,更符合用户的操作呢?想到了random.choice方法。于是搜了一下,下面这个文章总结的比较详细,分享一下。--------------------------------------------以下为原文--------------------------------------------Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序.转载 2020-06-17 15:36:33 · 1248 阅读 · 0 评论 -
python+uiautomator2 xpath定位太坑了,有没有其他办法定位代替
python+uiautomator2 xpath定位太坑APP端版本升级,以前写的代码需要重新执行一下,完事儿了查看日志,发现。。。。有这么多NG的。然后一个一个查,发现至少有一半是因为用了xpath定位,页面一变就定位不到报错的。去github上又看了一遍uiautomator2使用说明(网址:https://github.com/openatx/uiautomator2),找到两种简洁定位方式,可以使用。一、相对定位关键词:left,right,top,bot...原创 2020-06-04 17:34:37 · 5703 阅读 · 3 评论 -
openatx的uiautomator2使用说明书(转载)(记录问题点)
使用python+uiautomator2实现安卓APP自动化Mark一下github上的各方法的说明,方便后期使用时有地方查询。目前碰到的问题:1、APP应用中使用webview(H5)页面的toast弹框,内容无法提取到2、APP应用中如果有时间控件,如何自如的选择时间(目前使用d.swipe(375, 1557, 375, 1761)点到点移动方式,感觉不够灵活)记录一下,后期过来填坑...转载 2020-05-18 18:15:32 · 411 阅读 · 0 评论 -
【pytest】setup/teardown为什么有时候不起作用?
在使用pytest框架的时候,模块内写了setup/teardown的方法。那为什么有的时候不起作用了呢?查了一下资料,原来是方法放置的位置不对。比如下列代码(方法定义在类的上面):执行结果(setup/teardown定义的打印效果没有出来):将setup/teardown方法放置在类class里面,就可以起作用了。见代码:执行结果:所以,假如模块中定义了类结构,想要使用setup/teardown方法的话,一定要放置在类结构内部。注:文章内..原创 2020-05-12 14:04:38 · 3149 阅读 · 2 评论 -
Uiautomator2+python 怎么切换输入法
在使用Uiautomator2+python做自动化的时候,经常因为需要输入文字而弹出输入框,之后输入框挡住了按钮,导致该按钮定位超时而发生错误。怎么能让输入框自动消失,就是需要解决的问题。方法一:在程序运行之前,手动将输入法切换成IME模式(例如:OPPO手机内置的就是UnicodeIME,见下图),这样输入框内输入文字的时候,不会弹出输入框,问题解决了。(但是手工测试的时候,就需要切...原创 2020-04-27 11:14:12 · 2050 阅读 · 0 评论