使用Jmeter 对APP进行压力测试

Posted li8537

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Jmeter 对APP进行压力测试相关的知识,希望对你有一定的参考价值。

1、添加线程组 : 右键测试计划 - 线程(用户) - 线程组

技术图片

 2、添加简单控制器:右键线程组→添加→逻辑控制器→简单控制器   

      作用: 用来组合取样器和其他逻辑控制器

      简介:简单控制器是最基本的控制器,对jmeter测试运行没有任何影响,可用来命名某些操作

 技术图片

3、添加HTTP cookies 管理器:右键简单控制器→添加→配置元件→HTTP cookies 管理器

   功能:1)、存储并发送cookie

              2)、存储cookie到cookie管理器,这个cookie将被所有 JMeter 线程所共享

技术图片

4、添加CSV数据文件设置:右键简单控制器→添加→配置元件→CSV数据文件设置

技术图片

 5、添加监听器:右键线程组→添加→监听器→察看结果树、聚合报告、图形结果

1)、察看结果树:放的位置不同,查看的结果也不同。在线程组下添加察看结果树,查看线程组下所有请求的结果;放在具体某个请求下,只查看此请求的结果;若放在某个控制器节点下,则查看此控制器下节点执行的结果。

2)、聚合报告: 记录这次却被行测试总请求数、错误率、用户响应时间(中间值、90%、最少、最大)、吞吐量等,用以帮助分析被测试系统的性能。

3)、图形结果:主要看一段时间内的曲线走向趋势

技术图片

 6、添加HTTP代理服务器:右键测试计划→添加→非测试元件→HTTP 代理服务器

作用:完成jmeter脚本录制

技术图片

7、配置HTTP代理服务器

· 端口:8888
· 目标控制器:测试计划→HTTP代理服务器
· 分组:每个组放入一个新的控制器

 技术图片

配置手机代理

1.在设置→WLAN页面 开启手动代理
2.在PC端CMD→ipconfig查看ip 填写代理服务器主机名
3.填写代理服务器端口 与HTTP代理服务器端口一致

技术图片

 

 

 

录制脚本

1.在HTTP代理服务器页面点击启动,进入录制状态

2.在手机端操作要压测的APP

3.录制完成后点击停止

4.查看录制脚本(可以删除不需要压测的部分)

使用jmeter进行性能测试

 1.造数据:先看参数要求中需要输入哪些参数,必传参数必须有数据,非必传可造可不造,(csv每行表示每一组参数值,每列表示同一种变量)造好数据后,另存为csv格式文件

技术图片

 2.填写CSV数据文件设置
·文件名:测试数据的路径
·文件编码:UTF-8
·其他:默认即可

 技术图片

   phone 和 password 代表这一行有2个数据,把读取到的2个数据分别赋值给age和sex(循环一次,使用第一行的数据,循环两次使用第二行的数据,超过数据行再次从第一行往下)

 3.参数设置
填写造了数据的参数,没造数据的就不用填了,使用 ${参数名称} 格式,如果参数是固定值就输入固定值,如果输入数字就需要在数字前加上英文逗号“,”,例如是年月日格式,参数输入固定值时就必须输入“,2014-07-12”。

技术图片

技术图片

4.设置线程属性(根据实际需求填写)
线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。
1)线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。需要设置多少个虚拟用户数就在这里填写多少个线程数。
2)准备时长: 设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为5 ,那么需要5秒钟启动20个线程。也就是每秒钟启动4个线程。
3)循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。
除了固定循环次数与永远外,也可以灵活的选择设定测试运行时间。勾选“调度器”,进行调度器配置。
技术图片

5.运行脚本

6.测试结束后,查看聚合报告结果,一般来说samples越大越好,一般也最好测试900s,或者10000条。然后根据性能测试统计表填写数据(平均响应时间、最大响应时间、最小响应时间、错误率)

技术图片

 7.结果分析: 根据需求判断压测结果是否满足实际需要,如果偏差太大,就需要进行性能优化。

 

以上是关于使用Jmeter 对APP进行压力测试的主要内容,如果未能解决你的问题,请参考以下文章

jmeter怎么对整个项目压力测试_使用 JMeter 进行压力测试

如何对需要javascript的Web App进行压力测试

使用 JMeter 进行压力测试

使用 JMeter 进行压力测试

学习使用Jmeter做压力测试--压力测试基本概念

使用jmeter对websocket进行压力测试