做Android手机/电视机/车载系统稳定性测试,
需要进行100次的系统重启,确保启动过程中,不出现卡死起不来,
或者起来后Home界面异常等情况。
还有涉及首次使用开机激活界面的测试,要确保每次系统重启,
只要设备没激活,就得每次都弹出激活界面。
准备阶段
Python批处理脚本形式
Python只需要用os.system()函数,
即可快速实现调用各类命令行命令。
# coding=utf-8 import os for i in range(1, 101): os.system("adb wait-for-device") os.system("adb reboot") print("系统第%s轮软重启中...请稍候!" % i) os.system("pause")
os.system("pause"),建议尽量加上,其含义是暂停程序执行,
等待用户查看脚本执行结果,避免运行完毕后直接自动关闭脚本执行cmd窗口。
Python面向过程函数形式
找到可以封装成一个函数块的小代码块儿, 用函数封装起来.
函数的命名一般建议用"动词", 所以我们命名为: "reboot",
封装好后, reboot()函数调用即可。
# coding=utf-8 import os def reboot(): # 封装 for i in range(1, 101): os.system("adb wait-for-device") os.system("adb reboot") print("系统第%s轮软重启中...请稍候!" % i) reboot() # 调用 os.system("pause")
以上是最简单的函数,即将代码块打个包,用一个函数封装起来。
另外一种形式如下:
# coding=utf-8 import os def reboot(cycle): # 封装 for i in range(1, cycle + 1): os.system("adb wait-for-device") os.system("adb reboot") print("系统第%s轮软重启中...请稍候!" % i) reboot(100) # 调用并传参 os.system("pause")
以上这种是更高端的,带参数输入的函数形式的函数,
其可以控制重启次数,想重启100次,直接传参100即可。
Python面向对象类形式
# coding=utf-8 import os class Rebooter(): def __init__(self): pass def reboot(self, cycle): for i in range(1, cycle): os.system("adb wait-for-device") os.system("adb reboot") print("系统第%s轮软重启中...请稍候!" % i) r_obj = Rebooter() # 实例化一个对象 r_obj.reboot(100) # 用对象来调用函数。 os.system("pause")
代码运行方式
确保Android设备,通过USB与电脑连接了,
以上代码的3种实现形式都可以直接运行,
比如保存为adb_reboot_100.py并放在桌面,
每次需要截图的时候,双击运行adb_reboot_100.py,
就可以开始执行脚本了。
脚本优化方向
实际自动化测试中,肯定不止这么简单,还需要考虑:
更多更好的原创文章,请访问官方网站:www.zipython.com
自拍教程(自动化测试Python教程,武散人编著)
原文链接:https://www.zipython.com/#/detail?id=d42a3e82a8814691839042ba3984b26a
Copyright © 2004-2024 Ynicp.com 版权所有 法律顾问:建纬(昆明)律师事务所 昆明市网翼通科技有限公司 滇ICP备08002592号-4