使用Monkey进行Android中app稳定性测试

搭建Monkey软件稳定性测试环境

使用背景

使用monkey工具对安卓软件发送大量伪随机事件,长时间运行以进行软件稳定性测试。

adb环境搭建步骤

1、下载adb文件包,并解压,添加adb文件路径到环境变量path中,
例如:D:/adb.exe
2、打开命令控制符输入adb验证是否配置成功
若出现adb版本号即安装成功,
例如:Android Debug Bridge version 1.0.41
至此adb环境已经安装完成。
接下来就可以连接安卓设备进行使用了。

连接Android设备的两种方式

1、通过usb有线连接真实的Android设备
d = u2.connect(‘设备序列号’)
2、连接模拟器
d = u2.connect_usb(‘127.0.0.1:7555’) #这里使用的是mumu模拟器

##查看已连接的设备

adb devices

查看安卓设备中当前已经打开的程序名

adb shell pm list packages -3   #去掉-3可查所有程序包名

启用Monkey

启动monkey,指定针对指定程序发送伪随机事件,
示例:随机事件的类别比例:触摸事件50%,启动全部activity事件15%,
移动事件30%,横竖屏事件5%。执行过程中忽略crash、忽略ANR,监听crash代码。
日志打印级别为level3,事件间隔0.5s,执行100个事件。保存到本地C:\log.txt。

adb shell monkey -p 指定程序 -s 500 --pct-touch 50 --pct-appswitch 15 --pct-motion 30 --pct-rotation 5 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v --throttle 500 100 > C:\log.txt

在python脚本中,执行adb命令

os.system('adb shell monkey -p 指定程序 -s 500 --pct-touch 60 --pct-appswitch 10 --pct-motion 25 --pct-rotation 5 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v --throttle 500 100 1>C:/log.txt 2>C:/error.txt')

另一种写法

adb_data = 'adb shell monkey -p 指定程序 -s 500 --pct-touch 60 --pct-appswitch 10 --pct-motion 25 --pct-rotation 5 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v --throttle 500 100'		   
file_log = f'{dir_Final}/正确.log'
error_log = f'{dir_error}/错误.log'
os.system(f'{adb_data} 1>{file_log} 2>{error_log}')

实现执行adb命令后,获取执行伪随机事件的操作日志,分别输出正确的和错误的日志到指定目录中。
程序功能页面较多,因此可以结合uiatomator2编写python脚本,到程序指定页面或是功能中执行adb指令,向该功能页面发送大量伪随机事件,结合循环语句,长时间运行脚本,获得日志,分析程序稳定性。

猜你喜欢

转载自blog.csdn.net/weixin_44996886/article/details/130305830