如何测试app的稳定性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何测试app的稳定性相关的知识,希望对你有一定的参考价值。
稳定性测试是指对应用进行长时间的操作,检测功能是否稳定。可以考虑采用monkey测试。adb shell monkey -p 包名 -v -v --throttle 300 -s 种子数 --ignore-crashes --ignore-timeouts --ignore-security-exceptions 动作次数 |logcat -v time > 日志路径
参数:
-p : 指点包名,如果要指定多个包名,需多个-p参数
-v : 指定日志的详细程度,取值1-3,三个 -v 详细程度最高
-throttle : 指定用户操作时的时延,单位毫秒
-s : 指定伪随机数生成器的seed值,取值1-10,当seed相同,产生的事件序列也相同
–ignore-crashes : 指应用程序崩溃,monkey依然发送事件,直到事件数完成
–ignore-timeouts: 指应用程序发生ANR,monkey依然发送事件,直到事件数完成
–ignore-security-exceptions: 指应用程序发生许可错误,monkey依然发送事件,直到事件数完成
|logcat -v time: 给monkey命令的日志加上时间
可以多去黑马程序员视频和技术社区库看看,里面这样的知识点特别多 参考技术A 通过人工专业测试分析+自动化检测工具的方式针对第三方插件爱内测技术人员会对插件进行扫描处理,测试工程师全面测试安装插件后的效果,根据实际的测试数据对第三方插件进行整体评价。 安全性:对插件的安全性进行评估,查看是否含有病毒,上传用户数据,窃取用户隐私等。其次对其漏洞进行扫描分析,查看是否存在安全漏洞可被黑客调用。 可用性:对插件的可用性进行评估,集成插件后的实际效果和插件描述进行对比,分析其是否达到了宣传的可用性。 稳定性:对集成插件后的APP进行测试,查看其稳定性,是否会出现集成后崩溃、闪退、兼容性降低、效率变低等问题。
APP稳定性测试工具:Monkey
参考技术A Monkey 是一款 app 的自动化测试工具,monkey 是猴子的意思,所以从原理上说,它的自动化测试就类似猴子一样在软件上乱敲按键,猴子什么都不懂,就爱捣乱。Monkey 原理也是类似,通过向系统发送伪随机的用户事件流( 如按键输入、触摸屏输入、滑动 Trackball、手势输入等操作 ),来对设备上的程序进行测试,检测程序长时间的稳定性,多久的时间会发生异常。Monkey 工具存在 Android 系统中,使用 Java 语言写成,jar 包在 Android 文件系统中的存放路径是:/system/framework/monkey.jar;Monkey.jar 程序是由一个名为“monkey”的 Shell脚本来启动执行,shell 脚本在 Android 文件系统中的存放路径是:/system/bin/monkey;monkey 需要通过 adb 来唤醒,即通过在 cmd 窗口中执行: adb shell monkey +命令参数}来进行 Monkey 测试;
在 Monkey 运行的时候,它会生成事件,并把它们发给系统。同时,Monkey 还对测试中的系统进行监测,对下列三种情况进行特殊处理:
(1)如果限定了 Monkey 运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止;
(2)如果应用程序崩溃或接收到任何失控异常,Monkey 将停止并报错;
(3)如果应用程序产生了应用程序不响应 ANR(application not responding)的错误,Monkey 将会停止并报错;按照选定的不同级别的反馈信息,在 Monkey 中还可以看到其执行过程报告和生成的事件。
0、–help : 列出简单的用法
1、允许启动手机里面所有的 App , 随机操作 1000 次
2、-p : 允许启动 App 的包名
启动一个包名的应用,QQ 的包名为: com.tencent.mobileqq
案例:随机操作 手机 QQ 1000 次
案例:随机操作 手机 QQ 和 微信 1000 次
3、-v : 操作日志记录
命令行的每一个-v将增加反馈信息的级别。
4、-s : 伪随机数生成器的seed值
如果用相同的seed值再次运行monkey,将生成相同的事件序列。
5、--throttle : 插入固定延迟
在事件之间插入固定延迟。通过这个选项可以减缓Monkey的执行速度。如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被执行。
案例:随机执行 500 个事件,每个事件之间延迟 500 毫秒被执行。
6、--ignore-crashes : 忽略操作是崩溃异常
通常,应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
7、--ignore-timeouts : 忽略超时
通常,应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
8、--ignore-security-exceptions : 忽略程序发生许可异常
通常,当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
9、调整触摸事件百分比
触摸事件不单单是按键,它泛指发生在某一位置的一个down-up事件。
10、调整手势事件百分比
11、调整应用启动事件的百分比
如果你希望调整应用启动事件的百分比。
12、调整屏幕旋转事件百分比
Monkey弱点:
Monkey虽然可以根据一个指定的命令脚本发送按键消息,但不支持条件判断,不支持读取待测界面的信息来执行验证操作
以上是关于如何测试app的稳定性的主要内容,如果未能解决你的问题,请参考以下文章