ps:对app压力测试所做的一个回忆笔记。
压力测试的意义:提升app稳定性,保证使用率,保留用户,提高效益。
介入时间:功能测试通过后
monkey:存在于手机系统中,伪随机事件
准备环境:android sdk (下载地址:http://www.android-studio.org/)、python(https://www.python.org/downloads/)并配置好环境变量
命令执行adb shell monkey -p package
adb devices---adb install packagea.apk(安装所测的包)---adb shell monkey 1000---adb logcat |grep START,然后将操作一下所做的app,最后的那条就含有包名(cmp=包名/)
如:adb shell monkey -p 包名 -s 100 --pct-touch 50 --pct-motion 30 --ignore-crashes --ignore-timeouts -v 10000
常用参数:
throttle:延迟 adb shell monkey -p 包名 --throttle
s:种子数(建议执行monkey时加上种子数,测试一晚上,在开发改bug后可使用相同种子数保证相同操作进行bug的验证)adb shell monkey -p 包名 -s 种子数 事件数
--pct-touch:触摸点击事件
--pct-motion:动作事件
--pct-trackball:轨迹球事件
--ignore-crashes:
--ignore-timeouts:
崩溃例子:简单计算器app进行压力测试
adb shell monkey -p com.sky.jisuanji -v 1000>e:error.log
发生崩溃后,将崩溃结果发给开发即可。
待开发修复完bug后,加上相同的种子数进行验证即可。 无响应例子: 测试app在手动测试过程中发生了无响应,其无相应日志已经自动被记录到手机里了。位置data/anr 的traces.txt文件就是,发给开发即可。
测试app在monkey测试中发生无响应,直接将日志发给开发即可。 monkey脚本 adb shell monkey -f 脚本 执行次数
|