接口测试jmeter多用户同时领取云豆
Posted 光荣之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试jmeter多用户同时领取云豆相关的知识,希望对你有一定的参考价值。
新书
速递
吴老的java版《selenium webdriver 实战宝典》和python版《selenium Webdriver 3.0 自动化测试框架实战指南》出版了,代码拿来就能用。
文 | 夜鸣猪
一、测试目的:
2万用户不停请求云豆领取接口时,查看服务器内存占用情况,从而确认服务器内存占用异常的情况是否得到修复。
二、测试策略:
用2万个账号,以每2秒100次请求的速度向服务器发出请求,观察内存占用情况。
三、测试步骤:
1、启动jmeter,创建一个线程组如图 1-1:
图1-1
2、在该线程组下面创建一个“http请求头设置”如图 2-1,设置参数如图 2-2:
图 2-1
图 2-2
请求头参数设置根据研发提供接口设置即可,注:由于要使用2万个不同账号请求接口,adviserId应该使用参数化,jmeter参数化格式为 ${adviserId}。
3、添加“http request”如图 3-1,并设置参数如图 3-2:
图3-1
图 3-2
注:请求中不含任何参数时,需要在Body Data中写一个“{}”
4、添加用于存储2万条用户数据的csv文件如图 4-1,参数配置如图 4-2:
图 4-1
图 4-2
FileName:csv文件路径
Variable Names:参数化名称(每从csv中读以个数据,都会赋值给adviserId,与第二步的参数化设置一致)
Ignore first line:忽略第一行
Delimiter:分隔符
Recycle on EOF:文件结束时循环
Stop thread on EOF:文件读取完毕时停止进程
Sharing mode:共享模式
5、添加接过树查看如图 5-1,整个项目结构如图 5-2:
图5-1
图 5-2
6、设置线程数量及循环次数如图 6-1:
图 6-1
Number of Threads:进程数或者说用户数
Ramp-Up Period (in seconds):在多少秒内发送完闭
Loop Count:循环次数
循环过程:
1)从csv文件中读取100个测试账号,在两秒内向服务器发送请求完毕,此为一个循环。
2)第二个循环读取csv数据时,会从上一个循环结束的位置开始读取,如果终端此次进程重新运行,则从csv文件开头读取
注:在批量运行之前,先用一个账号向服务器发送请求,确认服务器接收并处理该请求之后,再进行批量参数化运行。
四、测试结果:
本次测试主要的服务器内存异常情况由研发验证,在优化前后,服务器内存占用情况得到明显改善,测试通过并发版上线。
以上是关于接口测试jmeter多用户同时领取云豆的主要内容,如果未能解决你的问题,请参考以下文章