• Airtest如何自动连接重启后的设备并继续执行自动化脚本呢?


    1. 前言

    最近有些小伙伴来问我们,能不能让设备运行一些自动化脚本后,给它执行重启操作,之后再自动连接上这台设备,继续执行一些自动化脚本。

    答案当然是可以的,今天我们就从一个简单的小例子来看一下这个自动化场景吧。(PS:文末可以获得今天的练手脚本哦~)

    2. 关于连接重启设备的实操案例

    1)实操案例演示

    这个实操例子,大致的流程是:

    简单测试一下网易云音乐

    让设备重启

    自动连接重启后的设备

    给设备解锁

    再简单测试一下网易云音乐

    图片

    图片

    我们从运行视频来看下这个脚本的真实效果:

    在这里插入图片描述

    2)Airtest封装的shell接口

    在上述脚本中,我们在执行重启操作的时候,用到了Airtest封装的 shell() 接口,实际上脚本里面的 dev.shell(“reboot”) ,就是执行我们熟知的ADB指令 adb shell -s 手机序列号 reboot 。

    当然,Airtest还有很多常用的封装好的ADB接口,可以参考我们往期推文测试人员一定要懂的ADB操作,赶紧来看一看~。

    3)设备重启后需要重新连接设备/初始化poco

    另外,使用Airtest脚本让设备重启之后,Airtest并不会再主动连接上重启后的设备,所以我们需要在设备重启之后,再重新使用Airtest脚本去连接上这台设备,之后再执行相关的自动化操作。

    另外要注意的是,如果我们的自动化操作里面,包含poco操作,那么设备重启之后,除了连接设备,还要重新初始化poco。

    4)如何给重启后的设备解锁

    设备重启之后,我们还有可能遇到设备锁屏的问题,为了保障后面自动化脚本的顺利执行,在进入自动化测试内容之前,我们需要给设备解锁屏幕。
    大部分情况下,使用 Android.unlock() 即可,但是也有些设备,解锁后,需要增加一个从底部向上滑的动作,来进入到手机桌面,就像我们示例脚本所演示的那样。

    3. 拓展-关于主动断开设备连接

    上文说到如何主动连接重启后的设备,这里我们补充1个小知识点,就是如何主动断开连接的设备。

    举个应用场景,假设,我们当前连接了多台设备进行测试,一段时间后,其中1台设备已经测试完毕,后面都用不上了,这时候我们可以用Airtest1.2.7新增的接口 dev.disconnect() 来主动断开这台设备的连接。

    dev = connect_device("android:///")
    dev.disconnect()
    
    • 1
    • 2

    这个方式最大的好处,就是能帮助我们主动释放掉一些后面测试不会再用到的资源,比如一些adb连接等。

    4. 小结

    今天的内容,主要讲解了一个主动连接重启后设备的小案例,另外还拓展了下,如何主动释放设备连接。对今天练手脚本感兴趣的同学,可以给我们的公众号回复关键词“连接重启设备”,即可获得练手脚本。


    资源分享

    下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    架构与思维:如何应对Redis热Key?
    (39、40)分布式
    全链路压测:确保系统稳定性的关键一环
    可搜索加密:保护隐私的搜索技术
    本地生活小程序有什么功能_本地生活小程序的优势
    【Git】fork 出的仓库拉取源仓库
    《Grid Tagging Scheme for Aspect-oriented Fine-grained Opinion Extraction》论文阅读
    我的 React 最佳实践
    MyBatis-Plus学习笔记总结
    JavaSE——Collection迭代器的使用及源码分析、集合删除元素、Collection常用方法
  • 原文地址:https://blog.csdn.net/m0_67695717/article/details/127651084