jmeter模拟多用户并发

一、100个真实的用户

1、一个账号模拟100虚拟用户同时登录和100账号同时登录

  • 区别

(1)1个账号100个人用,同时登录;

(2)100个人100个账号,同时登录。

  • 相同

(1)两个都是100人同时登录,具体看项目需求。

2、账号来源

(1)利用"注册"或"创建"账号接口,创建100个用户;

(2)"查询"接口,保存100个账号的账号、密码到一个文件。

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

(1)jmeter脚本整体布局

brush:cpp;toolbar:false 复制代码
<span style="background-color:#f8f8f8"><span style="color:#333333">线程组(一级)---->请求默认值、请求头、http请求、察看结果树(二级)----->正则表达式、BeanShell 后置处理程序(三级)。</span></span>

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

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

**登录请求:**请求方法、请求路径、消息体;正则表达式提取token

**创建请求:**请求方法、请求路径、消息体;参数化用户名,创建多个用户;

**查询账号:**请求方法、请求路径、消息体;正则表达式提取用户名、密码;BeanShell 后置处理程序存储返回值到文件中。

(2)查询请求中的正则表达式和BeanShell 后置处理程序

  • 正则表达提取----->获取想要的字段内容
  • BeanShell 后置处理程序---->将提取到的字段内容存储在指定文件4.csv中
brush:cpp;toolbar:false 复制代码
<span style="background-color:#f8f8f8"><span style="color:#333333">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();</span></span>
  • 线程组线程数设置数目等于提取到的条数,执行脚本得到100个用户的账号和密码

二、100个用户同时登录

1.设置线程组

  • ​线程数:并发用户数

  • Ramp-up时间(秒):启动所有线程所需要的时长

(1)0---->代表同时并发;

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

  • 循环次数:Loop Count

(1)默认值是1;

(2)2---->线程数100,循环次数2。代表启动200个线程;

(3)勾选"永远",会一直执行,需要人工停止,一般配合调度器使用。

2.模拟多用户登录

  • 线程组下添加----->CSV 数据文件设置

将存储用户账号、密码的文件引入,并命名变量名称,在登录时调用。

  • 调用,传参${name}

注释:本系统账号密码一致,所以只需要调用一列值

brush:cpp;toolbar:false 复制代码
<span style="background-color:#f8f8f8"><span style="color:#333333">/api/v1/oauth/token?username=${name}&password=${name}&scope=all&grant_type=password</span></span>

3.执行++测试++,查看结果

100用户同时登录

2023最新Jmeter接口测试从入门到精通(全套项目实战教程)

相关推荐
我非夏日12 小时前
JMeter进阶篇
jmeter
惜.己12 小时前
Jmeter中的配置原件(三)
功能测试·测试工具·jmeter·1024程序员节
綦枫Maple12 小时前
Jmeter基础篇(23)TPS和QPS的异同
数据库·jmeter·oracle
惜.己12 小时前
Jmeter中的配置原件(二)
测试工具·jmeter·1024程序员节
我非夏日12 小时前
JMeter项目实战
jmeter
川石课堂软件测试12 小时前
性能测试|JMeter接口与性能测试项目
javascript·数据库·python·jmeter·单元测试
古人诚不我欺12 小时前
jmeter常用配置元件介绍总结之后置处理器
人工智能·jmeter·tensorflow
惜.己16 小时前
Jmeter中的配置原件(五)
功能测试·测试工具·jmeter·github·1024程序员节
qq_433716952 天前
编写第一个 Appium 测试脚本:从安装到运行!
自动化测试·软件测试·jmeter·ci/cd·职场和发展·appium·jenkins
土小帽软件测试2 天前
jmeter基础05_第1个http请求
测试工具·jmeter·软件测试学习