Jmeter 配置元件

Jmeter 配置元件

  • CSV 数据集配置
  • HTTP Cookie 管理器
  • HTTP Header 信息头管理器
  • 增加多个用户案列

使用Jmeter发送请求的时候,需要配置元件,配置请求Header、Cookie、数据集合等。可以模拟多个在线用户登录,修改请求头数据。

CSV 数据集配置

CSV Data Set Config元件可以从文件中读取数据,将CSV作为测试数据输入源,可以构造不同的输入参数给不同的线程使用。官方手册地址https://jmeter.apache.org/usermanual/component_reference.html#CSV_Data_Set_Config

添加路径,右键选择需要添加的API接口 -> 配置元件 -> CSV DATA Set Config 
在这里插入图片描述在这里插入图片描述
主要配置项目的含义

  1. 文件名 Filename, 文件名,可以指定绝对路径或者相对路径
  2. 文件编码 File Encoding,文件编码,不配置,默认使用系统编码读取文件
  3. 变量名称 Variable Names,参数名字列表,需要用逗号隔开。如果不配置,读取文件的第一行作为参数列表
  4. 忽略首行 Use first line as Variable Names,设置了变量名称之后,配置这个才会生效
  5. 分隔符 delimiter, 每一行数据的分隔符
  6. 是否允许带引号 Allow quoted data, CSV 数据是否带引号
  7. 遇到文件结束符再次循环 Recycle on EOF, 如果配置为 True, 线程数大于数据行数,超过的部分从第一行重新开始读取数据
  8. 遇到文件结束符停止线程 Stop thread on EOF
  9. 线程共享模式 Sharing mode, 默认为所有线程共享,第一个线程读取第一行数据,第二个线程读取第2行数据
    在这里插入图片描述

HTTP Cookie 管理器

cookie 用来识别当前请求的用户身份的,一般在登录验证之后,服务端返回给客户端,之后请求其它接口,客户端携带了 Cookie 就不需要再进行登录验证了。官网手册地址 https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Cookie_Manager.

  1. 默认情况下Jmeter 每个线程都有各自Cookie, 线程之间隔离的,但是如果手动添加的Cookie, 则所有的线程是共享的。
  2. 默认情况下Jmeter 会校验Cookie 不支持跨域的。如果需要跨域,需要配置 CookieManager.check.cookies=false。比如登录认证服务器域名是a.test.com.cn, 其它请求的域名在 b.dev.com.cn
  3. Cookie 不会在管理器页签显示的,可以在查看结果数,请求的内容中查看
    在这里插入图片描述
    查看结果树中有, Cookie Data
    在这里插入图片描述

HTTP Header 信息头管理器

请求头配置器,可以在请求头中配置 token, 签名串等。官方手册地址
https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Header_Manager
在这里插入图片描述

增加多个用户案列

本地启动一个web项目来测试,接口的响应速度,吞吐率。
测试项目地址 : https://gitee.com/3281328128/bootdo/tree/bootdo2.0/。
启动服务之后,显示的首页
在这里插入图片描述
可以先录制一下相关的接口,参考上一篇博客,如何录制接口Jmeter 测试脚本录制器-HTTP 代理服务器。我录制的结果如下
在这里插入图片描述

  1. 新建线程组
    在这里插入图片描述

  2. 复制上一步录制的接口
    先分析登录流程,可以发现,整个过程如下,(1)调用获取验证码接口 blog/getVerify (2)调用登录接口 blog/login(3)调用保存用户接口 user-add-new/sys/user/save。没找到合适的OCR识别工具去识别验证码,后端修改了生成验证码的逻辑,固定成了1234
    在这里插入图片描述

  3. 配置相关的元件
    (1)准备csv 源文件,第一行是参数的名称,user_name,password,email
    在这里插入图片描述
    用记事本打开的格式如图
    在这里插入图片描述

    (2)配置 CSV Data Set Config
    在这里插入图片描述
    只需要配置文件名,其它配置项用默认的即可。使用绝对路径,如图
    在这里插入图片描述

  4. 配置接口参数
    在这里插入图片描述
    name : ${user_name}
    username: ${user_name}
    password: ${password}
    email: ${email}

  5. 配置监听器
    在线程组下面添加查看结果树、聚合报告
    在这里插入图片描述

  6. 设置线程的数量
    在这里插入图片描述
    这里需要模拟100个用户同时添加的接口的负载,设置成100,和CSV 的数据量保持一致。

配置完成之后,启动线程
在这里插入图片描述
在查看结果树看到请求的 cookie
在这里插入图片描述
在聚合报告查看接口的性能
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/638953.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[学习笔记]刘知远团队大模型技术与交叉应用L4-Prompt-learning Delta-learning

Prompt-Learning and Delta-Tunning 背景和概览 但是从T5开始,大模型越来越大了。 微调很难了。 模型的趋势 Model Scaling:模型越来越大 Difficult Tuning:微调越来越难 Prompt-Learning 基本组成与流程介绍 预训练和fine-tuning有一…

140:leaflet加载here地图(v2软件多种形式)

第140个 点击查看专栏目录 本示例介绍如何在vue+leaflet中添加HERE地图(v2版本的软件),并且含多种的表现形式。包括地图类型,文字标记的设置、语言的选择、PPI的设定。 v3版本和v2版本有很大的区别,关键是引用方法上,请参考文章尾部的API链接。 直接复制下面的 vue+leaf…

2023年12月青少年机器人技术等级考试(二级)理论综合试卷

2023年12月青少年机器人技术等级考试(二级)理论综合试卷 选择题 第 1 题 单选题 下图中,能够将圆周运动转化为往复摆动的是?( ) A. B. C. D. 第 2 题 单选题 如图,该机械结构可实现的运动…

新闻每天都在更新,那网页上的新闻页面是怎么使用Dreamweaver制作的?

新闻每天都在更新,那网页上的新闻页面是怎么使用Dreamweaver制作的? 新闻有很多种,但大多数结构都差不多,我们就先做一个简单的新闻页面,如图1中画圈圈的新闻内容。 图1 案例实现 新闻页面一般由四个部分构成&#…

MarkDown学习笔记 直观全面详细

前言 为什么我们要学习Markdown呢?因为Markdown简单易学易上手,可以以纯文本格式编写文档,然后转换成有效的HTML文档,并且以导出 HTML 、Word、图像、PDF、Epub 等多种格式的文档,许多网站平台的文章、博客、论文均可…

Acwing 138 周赛 解题报告 | 珂学家 | 偏序 + DP构造

前言 整体评价 很久没做acwing周赛了, 之前vp过一些周赛,感觉风格变了。 这次感觉还可以,都是些眼熟的套路题。 A. 5458. 进水排水问题 思路: 签到题 按题意描述编写 import java.io.*; import java.util.*;public class Main {public static void …

【QT+QGIS跨平台编译】之四:【libSSH2+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

文章目录 一、libSSH2介绍二、文件下载三、文件分析四、pro文件五、编译实践 一、libSSH2介绍 libSSH2是一个开源的C函数库,用来实现SSH2协议。 SSH(Secure SHell)到目前为止有两个不兼容的版本——SSH1和SSH2。 SSH2避免了RSA的专利问题,并修补了CRC…

Mybatis 动态SQL条件查询(注释和XML方式都有)

需求 : 根据用户的输入情况进行条件查询 新建了一个 userInfo2Mapper 接口,然后写下如下代码,声明 selectByCondition 这个方法 package com.example.mybatisdemo.mapper; import com.example.mybatisdemo.model.UserInfo; import org.apache.ibatis.annotations.*; import j…

DCDC电路基础认知

前言 从开关电源(BMS充电器)入门硬件之——DCDC电路基础认知 有纰漏请指出,转载请说明。 学习交流请发邮件 1280253714qq.com 最近做的项目中有个需求,输入的电压是变化的(12-24V),但要保证…

unity单例模式

文章目录 在Unity中,单例模式是一种常用的编程设计模式,用于确保在整个应用程序生命周期中,只有一个类的实例存在。这样可以保证数据的全局唯一性和共享性,例如游戏场景中的资源管理器、游戏控制器、事件管理器等。 以下是一个简单…

EtherNet/IP开发:C++开发CIP源代码

① 介绍一下CIP CIP是一种考虑到自动化行业而设计的通用协议。然而,由于其开放性,它可以并且已经应用于更多的领域。CIP网络库包含若干卷: 第1卷介绍了适用于所有网络自适应的CIP的常见方面。本卷包含通用对象库和设备配置文件库&#xff0…

数据结构期末复习(5)图

图 在数据结构中,图(Graph)是由节点(Vertex)和边(Edge)组成的一种非线性数据结构。图可以用来表示不同事物之间的关系,比如社交网络中的用户和好友关系、城市之间的道路网络等。 图…

RLC如何通过改变频率实现输出稳压

当开关频率工作在容性区域时,容抗抵消完感抗还有剩余,所以容抗感抗可以近似为一个容抗Cr,但加上频率的改变,容抗又可以近似为一个可调电阻 那又改如何控制频率,保持输出稳压? 当输入与输出电压不变时,Rac变…

编写servlet

编写servlet 上述代码中的HTML页面将雇员ID发送给servlet。要创建servlet读取客户机发送的雇员ID并检索雇员的详细信息,需要执行以下步骤: 在“项目”选项卡中右击“Employee”节点,然后选择“新建”→Servlet。将显示“新建Servlet”对话框。在“类名”文本框中输入Employ…

苹果电脑(Mac)的node版本安装以及升降级

在开发过程中,对于不同的开发环境或者较老的项目可能需要切换不同的node版本,此过程会涉及到node版本的升级与降级,安装node版本管理模块n(sudo命令)。 全局安装n模块 sudo npm install n -g//输入后回车&#xff0c…

国产操作系统:VirtualBox安装openKylin-1.0.1虚拟机并配置网络

国产操作系统:VirtualBox安装openKylin-1.0.1虚拟机并配置网络 openKylin 操作系统目前适配支持X86、ARM、RISC-V三个架构的个人电脑、平板电脑及教育开发板,可以满足绝大多数个人用户及开发者的使用需求。适用于在VirtualBox平台上安装openKylin-1.0.1…

Python语法进阶——类

Python中的数据类型都属于类。int、str、list都是Python定义好的数据类型类。 print(type(list))#<class type> print(type(list()))#<class list> 一、自定义数据类型 一、语法 class 类名():pass #类名 要求首字母大写 #()可写可省略。 #pass在这里只是用来保证…

Unity学习-逐帧图集动画制作

首先在文件部分创建一个Sprite Library Asset 然后点击创建出来的文件 点下面的加号添加对应的图 添加完成之后点一下Apply 然后新建一个物体 添加这三个组件 其中SpriteLibrary里面 把你刚刚创建的图集文件拉过来 Sprite Resolver选择对应的动作和图片 然后开始制作动画 An…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《计及电-气-热综合能源系统的输配协同优化调度》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 这篇文章的标题表明文章将关注于综合能源系统&#xff0c;特别是涉及电力、气体和热能的输配协同优化调度。以下是对标题的一些关键词的解读&#xff1…

Matlab/simulink风储调频,多台飞轮储能调频,风电场调频,飞轮储能带有虚拟惯量和下垂控制,三机九节点系统一次调频,离散模型

上述为不同飞轮储能容量配比&#xff0c;风电场容量配比&#xff0c;以及有无附加频率控制的飞轮储能出力分析。 飞轮储能驱动电机为永磁同步机电机PMSG 有无飞轮储能容量较小&#xff0c;所以对频率的改善效果有限&#xff0c;不过可以继续增大容量&#xff0c;从而增大频率的…