app接口压力测试(api压力测试)

网友投稿 783 2023-02-24


本篇文章给大家谈谈app接口压力测试,以及api压力测试对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享app接口压力测试的知识,其中也会对api压力测试进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

App压力测试入门

(1)为app接口压力测试了提高产品的稳定性app接口压力测试
(2)为了提高产品的留存率;

(1)首轮功能测试通过以后;
(2)下班后的夜间进行;

Monkeyapp接口压力测试:在adb shell中,生成用户或系统的伪随机事件;
MonkeyRunner:通过API定义特定命令和事件来控制设备;
(1)MonkeyRunner API:用来连接设备或模拟器;
(2)MonkeyDevice:提供安装,卸载应用,发送模拟事件;
(3)完成图像保存,及对比操作;

(1)crash:即崩溃,app在使用过程中,非正常退出;
(2)anr:应用无响应,application not response;

(1)安装Android sdk并配置环境变量;
(2)打开手机开发者模式;
(3)确定手机与电脑已经连接:adb devices
(4)安装测试APP:adb install package.apk
(5)发送压力指令:adb shell monkey 1000,给手机发送10000个伪随机指令
(6)获取APP包名:adb logcat | grep START
(7)给指定包打压力:adb shell monkey -p 包名 1000,给手机计算器app发送1000个伪随机指令

(1)延时参数:--throttle 1000,指定事件之间的间隔为1000毫秒;
(2)种子参数:-s 100,指定随机生成树的seed值为100,使得两次的随机操作事件完全一样,可以用来复现bug;
(3)触摸事件参数:--pct-touch 50,设置触摸事件的百分比为50%,剩余的事件会随机;
(4)动作事件参数:--pct-motion 30,设置动作事件的百分比为30%,剩余的时间会随机;
(5)轨迹球事件:--pct-trackball <percent,设置轨迹球事件的百分比;
(6)基本导航事件:--pct-nav <percent,设置基本导航事件的百分比,输入设备的上下左右;
(7)主要导航事件:--pct-majornav <percent,设置主要导航事件的百分比,兼容中间键,返回键,菜单按键;
(8)系统导航事件:--pct-syskeys <percent,设置系统导航事件的百分比,HOME,BACK,拨号及音量键;
(9)启动Activity事件:--pct-appswitch <percent,设置启动activity的事件的百分比;
(10)不常用事件百分比:--pct-anyevent <percent,设置不常用事件的百分比;
(11)忽略崩溃事件:--ignore-crashes <event-count,设置忽略崩溃和异常;
(12)忽略超时事件:--ignore-timeouts <event-count,设置忽略超时事件;
实例:adb shell monkey -v -p 包名 --pct-touch 50 --pct-motion 50 --ignore-crashes -ignore-timeouts 1000

实例:
安装可以引起Crash 的APP
执行压力命令
析取CRASH 的Exception信息

在连线情况下,一般在晚上执行压力测试时,需要加上忽略崩溃事件和忽略超时事件,等第二天来之后,可以从adb log中过滤出CRASH和ANR异常的日志内容,然后在adb log中的最后一行获取seed值,用来复现问题。复制所获取的内容和monkey脚本到txt文本,发给开发定位具体问题原因。
找到ANR异常信息,发给开发
1、连线手机和电脑;
2、输入如下命令:
cd /data/anr/
ls
more traces.txt

adb shell monkey -f <scriptfile <event-count
(1)轨迹球事件:DispatchTrackball(int action,float x,float y),action参数,0代表按下,1代表弹起,x和y代表坐标点;
(2)点击事件:DispatchPointer(int action,float x,float y),action参数,0代表按下,1代表弹起,x和y代表坐标点;
(3)输入字符串事件:DispatchString(String text);
(4)启动应用事件:LaunchActivity(package,Activity);
(5)等待事件:UserWait(1000),1000毫秒=1秒;
(6)按下键值事件:DispatchPress(int keycode),keycode 66 回车键;
实例:在浏览器APP中输入一个字符串,重复点击100次
1、启动app;
2、点击输入框;
3、输入test;
4、点击回车键;
5、点击搜索按钮;
6、等待结果的出现;
7、点击clear按钮。
编写mook.script脚本内容:

注意点:
1、点击位置坐标,可以使用UI Automator Viewer工具来获取,bounds[376,97][464,145],表示某个区域的从左上角到右下角的两个点的坐标;
2、app必须要允许被外部调起,这就需要在AndroidManifest.xml中的LauchActivity之下加入一个参数:android:exported=true;

Android App之压力测试 异常测试结果分析

进行压力测试主要是保证app的稳定性,而获取CRASH、ANR的相关信息是为了快速定位问题。

什么是CRASH?app异常退出,影响用户后续正常使用,这种情况就可以列为app崩溃

什么是ANR? 全拼为Application Not Responding  即应用程序无响应

1、KeyDispatchTimeout (5 seconds) --按键或触摸事件在特定时间内无响应

2、BroadcastTimeout (10 seconds) --BroadcastReceiver 在特定时间内无法处理完成

3、ServiceTimeout (20 seconds) --Service在特定的时间内无法处理完成
CRASH 以及ANR 的出现都会对用户的使用出现非友好的体验,所以在测试过程尽早、尽快的发现这类问题
以上是关于Android App之压力测试的理论部分,接下来会针对性的更新实践内容

APP完整测试流程

app主要核ui与实际设计的效果图是否一致;交互方面的问题建议,可以先与产品经理确认,确认通过后,才开始让开发实施更改或优化

根据软件说明或用户需求验证App的各个功能实现,实际测试过程一般都是根据功能测试用例来执行。测试覆盖率基本上都是有测试用例主导,也就是说在功能测试部分,是检验测试用例是否有效以及完整的,也就导致另外一个问题,测试用例怎么写的问题。

模拟用户真实使用app是会遇到的中断情况进行测试.如: 网络的断网, 切换网络, 断电,来电话/短信,听音乐,切换到其他app, 打开其他app 的通知等

新旧版本的在功能,逻辑层面的兼容测试, 同一个app 在不同系统版本运行,以及不同机型之间的适配测试兼容测试:接口的兼容性测试能够保证大部分的功能完善;app在不同系统版本上保证运行适配性: 屏幕,系统版本等(系统位数一定要考虑)该部分通过第三方的云平台进行

可测试的方面- 安装和启动时间- CPU的占用- 内存的占用- 流量的耗用- 电量的耗用- 后端,测试App中的各类操作是否满足用户响应时间要求,主要是测试点在网速方面,2g,3g,wifi, 4g一定要覆盖到- 后端 有网络并发

在各种边界压力情况下(如电池、存储、网速等),验证App是否能正确响应
反复/长期操作下,系统资源是否占用异常;Android 可是使用adb命令
压力测试主要集中在后端,前端的压力测试目前测的较少

App安全测试大概划分为以下几类:
从数据的本地存储到数据的传输、处理以及远程访问等各个环节,基于相应的安全标准/行业标准评估App的安全特性;
借鉴在Web App和网络安全测试的一些成功经验在智能终端App测试中进行裁减或适配;
检测App的用户授权级别,数据泄漏,非法授权访问等;
对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测,以期发现潜在的安全问题;
基于各种通信协议或相应的行业安全标准检视App是否满足相应的要求。

这个简单的说就是站在用户的角度上进行使用app,学习成本低,易上手等,可以进行用户盲测,根据用户反馈的意见进行修改。测试人员可以通过与其他竞争品进行对比, 或者根据较大厂商app的交互习惯进行比较。

一般这部分建议使用自动化测试, 如果没有自动化测试,可以根据以下几方面进行测试:

线上测试是产品上线之后一定要完成的,这部分可以根据场景化进行回归测试,其中网络环境要全部覆盖一遍

jmeter对app进行压力测试

说明:以mac版为例

测试计划添加非测试元件http代理服务器

如图所示
端口:可以默认8888,也可以自己设置
HTTPS Domains:本机ip,mac上用ifconfig命令查看
目标控制器:就是选择录制的移动端脚本放在哪个位置,如果设置了线程组,可以放在线程组的某个位置,也可随意放,后面拖到线程组里去( 注意,一定要放到线程组里,否则在线程组中测不到数据,我就是一开始没注意耽误了很多时间 )
分组:可按照图中设置,对脚本自动分组,也可按照自己的需要设置

和电脑处在同一个wifi下,连上wifi,对这个wifi进行设置

通用描述文件配置描述文件

通用关于本机证书信任设置

关于app接口压力测试和api压力测试的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 app接口压力测试的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于api压力测试、app接口压力测试的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:app接口压力测试工具(手机app压力测试工具)
下一篇:文件上传接口测试用例(文件上传接口文档怎么写)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~