ATX 使用 u2 实现九宫格图案解锁

codeskyblue · November 29, 2017 · Last by wuxq replied at May 22, 2019 · 3787 hits

缩写

为了方便称呼,我一般会把python库uiautomator2简称为u2, 之前有文章简单的介绍过这个库https://testerhome.com/topics/10881

安装方法

pip install --pre -U uiautomator2

九宫格解锁

通常这种方式会用在很多的理财软件,开机密码,等等与安全有关的地方。那改如何用自动化的方式测试它呢。
其实实现起来也很简单。Uiautomator2里面有一个swipe方法,可以通过传入多个点的坐标来实现解锁九宫格

说了这么多,直接上代码吧。

import uiautomator2 as u2

u = u2.connect() # 手机连接到PC即可
u.swipe_points([(0.235, 0.456), (0.503, 0.449), (0.509, 0.601), (0.777, 0.603), (0.771, 0.763), (0.222, 0.75)], 0.2)

其中(0.235, 0.456) 代表 X(23.5%) Y(45.6%). 这里用绝对坐标也可以。
最后的0.2代表每一次滑动的时间。

简单吧。

贴个效果图吧

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 6 条回复 时间 点赞

支持支持!请问那些点可以放在什么数据结构里面吗?

八个鸭鹿 回复

[[x1, y1], [x2, y2]]这种

codeskyblue 浅谈自动化测试工具 python-uiautomator2 中提及了此贴 24 Dec 15:18
Jerry li atx 安卓集群管理 - 实践与扩展思路 中提及了此贴 22 Jan 15:55

老大,我想直接用adb shell swipe滑动解锁九宫格,咋写呢? swipe滑动point A 到pint B后就释放了。

这个效果图是用什么做出来的

鸱夷子皮 回复

licecap + atx投屏

如果同时要用appium是不是用不了 因为开了appium服务和atx服务之间 好像有点影响

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up