为了账号安全,请及时绑定邮箱和手机立即绑定

鸿蒙NEXT+Flutter开发12-自动抢微信测试名额B

鸿蒙NEXT+Flutter开发12-自动抢微信测试名额B

上篇文章已经完成了自动化框架的配置,以及自动化测试脚本的基本工作。接下来将实现自动抢名额的任务。

1.人工操作

打开鸿蒙NEXT应用市场,搜索“微信”,点击“抢先体验”。

https://img1.sycdn.imooc.com/672385250001352806960710.jpg


因为每次测试名额放量很少,不出意外,就会出现名额已满的提示:

https://img1.sycdn.imooc.com/6723852500012a4f13520768.jpg


如果运气爆棚,就会出现下面的界面,微信没有截图,用QQ的替代一下。

https://img1.sycdn.imooc.com/6723852500016f2506901482.jpg


点击下面的安装按钮,就可以进行安装测试啦。
上面就是人工操作所需的步骤,我们利用自动化框架,让上面的步骤自动执行。

2.获取需要操作的控件

想要自动化上面的人工操作,需要知道每次操作的控件对象,也就是需要找到操作中的各个按钮。幸运的是有大神已经做了相关的工作,名字叫做ui-viewer,可以查看鸿蒙NEXT系统的UI控件树,获取控件详情。可以通过下面的命令安装:

pip3 install -U uiviewer

安装完毕之后,可以使用下面的命令启动:

python3 -m uiviewer

正常启动后,会打开网址http://127.0.0.1:8000,出现如下页面:

https://img1.sycdn.imooc.com/67238525000144af22361608.jpg

3.编写自动脚本

利用uiviewer,找到各个按钮的信息,编写脚本如下,具体思路见注释。

from time import sleep
from hmdriver2.driver import Driver
# 需要根据实际进行替换
d = Driver("192.168.31.129:45897")
isFind = False
while not isFind:
    # 如果搜索按钮存在,则点击
    d(type="Button", text="搜索").click_if_exists()
    # 等待1s
    sleep(1)
    # 如果存在抢先体验按钮,则点击
    d(type="RelativeContainer", text="抢先体验").click_if_exists()
    # 如果名额已满,点击知道啦按钮
    d(type="Button", text="知道了").click_if_exists()
    # 如果有开始测试按钮,则测试
    d(type="Button", text="开始测试").click_if_exists()
    # 如果有需要同意的按钮,则同意
    d(type="Button", text="同意").click_if_exists()
    # 如果进入到应用信息页面
    if d(id="app_name").exists():
        # 点击安装按钮
        d(id="download_button").click_if_exists()

上面的脚本没有自动输入App的名称,可以根据需要,自己输入“微信”或“QQ”等,来自动查找测试名额,希望更多的鸿蒙NEXT用户可以尽快使用上微信或者QQ。
最后说明一下,文章的主要目的是讲述如何使用自动化框架,自动获取测试名额只是用到啦很少的功能,更详细的功能,请查询对应的自动化框架文档。



点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消