当前位置: 首页 > news >正文

JMeter(需要补充请在留言区发给我,谢谢)

一、学习工具

1、CinfigElement(HTTP Request Defaults、HTTP Header Manager、HTTP Authorization、CSV Data Set Config、User Defined Variables、JDBC Connection Configuration、HTTP Cookie Manager、Random Variable)

二、协议

1、HTTP协议(消息体数据(json)接口、content-type(四种)、参数(parameter)接口)

2、Webservice协议

3、JDBC协议(JDBC connection Configration、JDBC request、批量造数据)

三、第三方插件

Jm plugin manager(插件安装管理工具)

Jpgc(包含jp@gc的前缀的插件,通常需要在下载)

四、场景设计与运行监控

场景:

  1. Setup thread Group
  2. Thread Group
  3. TearDown Thread Group
  4. Ultimate Thread Group

设计:

  1. Parameter(HTTP传递参数统称如URLBody Data等
  2. CSV Data Config
  3. User Defined Variables用户定义变量
  4. User Parameter用户参数
  5. JsonExtractor(能够从JSON格式的数据中提取出所需的信息

执行:
Cookie Manager(存储从服务器响应中接收到的cookie在后续的HTTP请求中自动发送存储的cookie支持自定义cookie策略,如接受所有cookie、拒绝所有cookie或仅接受来自原始服务器的cookie

Header Manager(自定义HTTP请求的请求头支持在多个HTTP请求之间共享请求头配置

Http Sampler(发送GET、POST等HTTP请求支持URL参数、请求体数据、文件上传等可以配置请求的超时时间、重定向策略等

Debug Sampler(输出JMeter属性、变量和系统属性的值帮助开发者在测试过程中诊断问题

监控:

View Result Tree

Summary Report

Graph Result

Active Threads Over Time(用于显示测试执行期间并发线程的数量随时间的变化情况。这个图表有助于评估系统在不同负载下的性能表现)

Response Times Over Time (用于显示测试执行期间响应时间的变化情况。这有助于了解系统在不同负载下的响应时间表现。)

Transaction Per Second (是软件测试结果的测量单位,表示一个客户机向服务器发送请求并收到响应的过程。)

Server Agent (监控服务器资源利用率的代理,如指标CPU、内存、磁盘等)

PerfMetrics Collector (监控服务器资源利用率的插件,如指标CPU、内存、磁盘等)

nmon (第三方监控分析工具免费、监控各种指标CPU、内存、磁盘、特点消耗资源少、图形图可分析)

五、分布式环境测试(master-slaves、CLI-mode)

1)原因与需求:

当被测接口需要很高的并发量单机运行的JMeter很容易因为资源限制(如内存、CPU、网络IO)而出现性能瓶颈,导致测试结果不准确或测试无法顺利进行。此时,需要进行分布式测试解决

2)原理:

JMeter分布式测试环境搭建时,通常选择一台机器作为调度机(master),其他机器作为执行机(slave)。master负责编辑并分发测试脚本(jmx文件),slave负责执行测试脚本并将结果回传给master,master汇总所有slave的结果并生成最终的测试报告。

3)分布式测试的实现步骤

环境准备:确保所有机器上都安装了相同版本的JMeter和JDK,并配置好环境变量。

配置master:在master机器的jmeter.properties文件中配置远程执行机的IP地址和端口号。

配置slave:在slave机器上启动jmeter-server服务,并确保slave机器可以被master访问。

编写测试脚本:在master机器上编写测试脚本,设置好需要的线程数等参数。

分发与执行:通过master机器的JMeter GUI界面启动测试,master会将测试脚本分发到所有配置的slave机器上执行。

结果汇总:slave机器执行完毕后将结果回传给master,master汇总所有结果并生成测试报告。

六、Jenkins环境测试(ant、build文件修改、CI/CD配置)

  1. 原因与需求:

通过Jenkins搭建JMeter测试环境,可以实现测试的自动化、持续集成和持续部署,提高测试效率和软件质量。

  1. 原理:

Jenkins是一个开源的自动化服务器,它允许你自动化各种任务,如构建、测试和部署软件。

3)分布式测试的实现步骤

安装Jenkins:在服务器上安装Jenkins,并启动Jenkins服务。

安装JMeter插件:在Jenkins中安装JMeter插件,以便能够执行JMeter测试脚本。

配置Jenkins任务:在Jenkins中创建一个新的任务,配置任务以执行JMeter测试。这包括设置测试脚本的路径、测试报告的保存路径等。

配置构建触发器:根据需要配置构建触发器,如定时触发、代码提交触发等,以实现测试的自动化。

执行测试:保存配置后,手动触发或等待触发器自动触发任务执行测试。Jenkins将自动下载JMeter并执行指定的测试脚本。

查看结果:测试执行完毕后,Jenkins会生成详细的测试报告,包括性能指标、图表和趋势分析等,方便开发人员和测试人员进行性能分析和优化。

七、未完成

1、逻辑控制器插件:(事务控制器、仅一次控制器、条件控制器、循环控制器)

Beanshell插件(BeanShell PreProcessor(是一个前置处理器,它在采样器(如HTTP请求)执行之前运行自定义的BeanShell脚本。它允许用户在进行请求之前对数据进行预处理或准备测试数据。)、BeanShell PostProcessor(是一个后置处理器,它在采样器执行之后运行自定义的BeanShell脚本。它允许用户对采样器的响应数据进行处理或进一步分析。)、BeanShell Timer(是一个定时器组件,它允许用户通过编写BeanShell脚本来自定义采样器的等待时间。))

2、跨线程组传参

3、MD5解密

相关文章:

JMeter(需要补充请在留言区发给我,谢谢)

一、学习工具 1、CinfigElement(HTTP Request Defaults、HTTP Header Manager、HTTP Authorization、CSV Data Set Config、User Defined Variables、JDBC Connection Configuration、HTTP Cookie Manager、Random Variable) 二、协议 1、HTTP协议(消息体数据&am…...

线程池的执行流程和配置参数总结

一、线程池的执行流程总结 提交线程任务;如果线程池中存在空闲线程,则分配一个空闲线程给任务,执行线程任务;线程池中不存在空闲线程,则线程池会判断当前线程数是否超过核心线程数(corePoolSize&#xff09…...

node-red-L3-重启指定端口的 node-red

重启指定端口 目的步骤查找正在运行的Node.js服务的进程ID(PID):停止Node.js服务:启动Node.js服务: 目的 重启指定端口的 node-red 步骤 在Linux系统中,如果你想要重启一个正在运行的Node.js服务&#x…...

(done) 使用泰勒展开证明欧拉公式

问问神奇的 GPT,how to prove euler formula? 一个答案如下:...

红队apt--邮件钓鱼

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 免责声明: 本文仅供了解攻击方手法使用,切勿用于非授权情节 初步了解邮件基础 用途方面 这个我们应该比较熟悉,最常用于验证码接收,也有一些厂商会用这个来打广告,…...

十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式)

十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式) 文章目录 十七,Spring Boot 整合 MyBatis 的详细步骤(两种方式)1. Spring Boot 配置 MyBatis 的详细步骤2. 最后: MyBatis 的官方文档:https://mybatis.p2hp.com/ 关于 MyBa…...

DNS协议解析

DNS协议解析 什么是DNS协议 IP地址:一长串唯一标识网络上的计算机的数字 域名:一串由点分割的字符串名字 网址包含了域名 DNS:域名解析协议 IP>域名 --反向解析 域名>IP --正向解析 域名 由ICANN管理,有级别&#xf…...

每日一题——第一百零八题

题目&#xff1a; 写几个函数&#xff0c; ①输入10个职工的姓名和职工号 ②按照职工号由小到大排列&#xff0c; 姓名顺序也随之调整 ③要求输入一个职工号&#xff0c; 用折半查找找出该职工的姓名 #include<stdio.h> #include<string.h> #define MAX_EMPOLYEES…...

使用Python免费将pdf转为docx

刚刚想将pdf转换为docx文档时&#xff0c;居然要收费 还好我学过编程&#xff0c;这不得露两手 将pdf 转换为 docx 文档 的操作步骤 我这里使用的是Python语言 &#xff08;1&#xff09;在终端上安装 pdf2docx 是一个 Python 库&#xff0c;它可以将 PDF 文件转换为 Word (…...

树莓派4B+UBUNTU20.04+静态ip+ssh配置

树莓派4B+UBUNTU20.04+静态ip+ssh配置 1.烧录Ubuntu镜像1.1选择pi 4b1.2选择ubuntu server (服务器版,无桌面)20.041.3选择sd卡1.4 点击右下角 NEXT ,编辑设置,输入密码,wifi选CN, 开启ssh1.5 烧录,依次点击“是”,等待完成2 烧录完成后装入树莓派,上电,等待系统完成配…...

C#实现指南:将文件夹与exe合并为一个exe

在软件开发过程中&#xff0c;有时需要将多个文件&#xff08;如资源文件、配置文件等&#xff09;与可执行文件&#xff08;exe&#xff09;打包在一起&#xff0c;以便于分发和部署。在C#中&#xff0c;我们可以利用ILMerge或Costura.Fody等工具来实现这一目标。本文将介绍如…...

linux信号 | 学习信号三步走 | 全解析信号的产生方式

前言&#xff1a;本节内容是信号&#xff0c; 主要讲解的是信号的产生。信号的产生是我们学习信号的第二个阶段。 我们已经学习过第一个阶段——信号的概念与预备知识&#xff08;没有学过的友友可以查看我的前一篇文章&#xff09;。 以及我们还没有学习信号的第三个阶段——信…...

C++ 刷题 使用到的一些有用的容器和函数

优先队列 c优先队列priority_queue&#xff08;自定义比较函数&#xff09;_c优先队列自定义比较-CSDN博客 373. 查找和最小的 K 对数字 - 力扣&#xff08;LeetCode&#xff09; 官方题解&#xff1a; class Solution { public:vector<vector<int>> kSmallestP…...

【Kubernetes】常见面试题汇总(三十四)

目录 86. K8s 每个 Pod 中有一个特殊的 Pause 容器能否去除&#xff0c;简述原因。 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#xff09;” 。 题目 69-113 属于【Kuberne…...

C++标准库双向链表 list 中的insert函数实现。

CPrimer中文版&#xff08;第五版&#xff09;&#xff1a; //运行时错误&#xff1a;迭代器表示要拷贝的范围&#xff0c;不能指向与目的位置相同的容器 slist.insert(slist.begin(),slist.begin(),slist.end()); 如果我们传递给insert一对迭代器&#xff0c;它们不能…...

华为机考练习(golang)

输入 第一行输入一个正整数N&#xff0c;表示整数个数。&#xff08;0<N<100000&#xff09; 第二行输入N个整数&#xff0c;整数的取值范围为[-100,100]。 第三行输入一个正整数M&#xff0c;M代表窗口的大小&#xff0c;M<100000&#xff0c;且M<N。 输出 窗口…...

51单片机快速入门之按键应用拓展

51单片机快速入门之按键应用拓展 LED的点动控制: 循环检测,当key 为0 时 led 亮 反之为熄灭 while(1){ if(key!1) { led0; }else { led1; } } LED的锁定控制: 当按钮按下,led取反值 while(1) { if(key!1) { led!led; } } LED的4路抢答控制: bz默认为0 !bz 取反值,循环启动…...

数据库 - MySQL的事务

目录 前言 一、事务的特性 &#xff08;一&#xff09;原子性 &#xff08;二&#xff09;一致性 &#xff08;三&#xff09;隔离性 &#xff08;四&#xff09;持久性 二、事务的控制语句 三、事务隔离级别 &#xff08;一&#xff09;读未提交 &#xff08;二&…...

【Python机器学习】NLP信息提取——提取人物/事物关系

目录 词性标注 实体名称标准化 实体关系标准化和提取 单词模式 文本分割 断句 断句的方式 使用正则表达式进行断句 词性标注 词性&#xff08;POS&#xff09;标注可以使用语言模型来完成&#xff0c;这个语言模型包含词及其所有可能词性组成的字典。然后&#xff0c;该…...

vector类

一、STL库 vector 1.1 vector的介绍 vector英文意思为向量&#xff1a;向量是表示大小可以改变的数组的序列容器。 指向其元素的常规指针上的偏移量来访问其元素&#xff0c;并且与数组中的效率一样高。但与数组不同&#xff0c;它们的大小可以动态变化&#xff0c;其存储由容…...

web vue 项目 Docker化部署

Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段&#xff1a; 构建阶段&#xff08;Build Stage&#xff09;&#xff1a…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

USB Over IP专用硬件的5个特点

USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中&#xff0c;从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备&#xff08;如专用硬件设备&#xff09;&#xff0c;从而消除了直接物理连接的需要。USB over IP的…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...