超详细,Jmeter性能测试-模拟100个用户并发(实战)

自动化测试视频推荐:

【自动化测试速成版】这才是B站最全面的自动化测试教程,零基础入门软件测试教程,每天10分钟,学完可就业!


前言

100个真实的用户

1、一个账号模拟100虚拟用户同时登录和100账号同时登录
区别:
1个账号100个人用,同时登录;
100个人100个账号,同时登录;

相同:
两个都是100人同时登录,具体看项目需求;

2、账号来源
利用“注册”或“创建”账号接口,创建100个用户;
“查询”接口,保存100个账号的账号、密码到一个文件;

3、提取100个账号、密码的文件

Jmeter脚本整体布局
线程组(一级)---->请求默认值、请求头、http请求、察看结果树(二级)----->正则表达式、BeanShell 后置处理程序(三级)。

HTTP请求默认值:是存放系统通用ip的位置(协议:http; 服务名称或ip:127.0.0.1);

HTTP信息头管理:接口请求之前需要带的信息,部分接口不带不能运行(Authorization、Content-Type、Accept、User-Agent),例如必须带的token就在信息头中存放;

登录请求:请求方法、请求路径、消息体;正则表达式提取token
创建请求:请求方法、请求路径、消息体;参数化用户名,创建多个用户;
查询账号:请求方法、请求路径、消息体;正则表达式提取用户名、密码; BeanShell后置处理程序存储返回值到文件中。

请添加图片描述

查询请求中的正则表达式和BeanShell 后置处理程序
正则表达提取----->获取想要的字段内容

请添加图片描述

BeanShell 后置处理程序---->将提取到的字段内容存储在指定文件4.csv中

FileWriter fs=new FileWriter("D://近期//4.csv",true);
BufferedWriter ut =new BufferedWriter(fs);
out.write(vars.get("username")+","+vars.get("id"));    //username、id为正则定义名称
out.write(System.getProperty("line.separator"));      //相当于"\n"自动换行
out.close();
fs.close();

请添加图片描述

线程组线程数设置数目等于提取到的条数,执行脚本得到100个用户的账号和密码

请添加图片描述

100个用户同时登录

1、设置线程组
线程数:并发用户数
Ramp-up时间(秒):启动所有线程所需要的时长

0---->代表同时并发;
100---->线程数100,时间100秒。代表每隔1s启动一个线程(100/100=1)

循环次数:Loop Count
默认值是1;
2---->线程数100,循环次数2。代表启动200个线程;
勾选“永远”,会一直执行,需要人工停止,一般配合调度器使用。

请添加图片描述

2、模拟多用户登录
线程组下添加----->CSV 数据文件设置
将存储用户账号、密码的文件引入,并命名变量名称,在登录时调用。

请添加图片描述

调用,传参${name}
注释:本系统账号密码一致,所以只需要调用一列值

/api/v1/oauth/token?username=${name}&password=${name}&scope=all&grant_type=password

请添加图片描述

3、执行测试,查看结果
100用户同时登录

请添加图片描述

 最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值