Jmeter(二) - 从入门到精通 - 创建测试计划(Test Plan)(详解教程)
1.简介
上一篇文章已经教你把JMeter的测试环境搭建起来了,那么这一篇我们就将JMeter启动起来,一睹其芳容,首先我给大家介绍一下如何来创建一个测试计划(Test Plan)。
2.创建一个测试计划(Test Plan)
测试计划(Test Plan)描述了一系列Jmeter运行时将要执行的一系列步骤。完整的测试计划包含一个或者多个线程组,逻辑控制器,取样发生控制,监听器,定时器,断言和配置元件组成。
2.1添加和删除元件
可以通过右键单击树中的元素,然后从“ 添加 ”列表中选择一个新元件来将元件添加到测试计划中。或者,可以通过选择“ merge ”或“ open ”选项从文件中加载和添加元素。
要删除元件,请确保已选择该元件,右键单击该元件,然后选择“ 删除 ”选项。
2.2 加载和保存元件
要从文件中加载元件,请右键单击要向其中添加已加载元件的现有树元素,然后选择“ 合并 ”选项。选择保存元素的文件。JMeter将元素合并到树中。
要保存树元素,请右键单击元素,然后选择“ 将选择另存为... ”选项。JMeter将保存选定的元素及其下的所有子元素。这样,您可以保存测试树片段和单个元素以供以后使用。
注意:敲黑板,敲脑壳啦!!!工作台不会自动保存测试计划,但是它可以同上被单独保存的。
2.3 配置树元件
在测试树中的任何元件都在JMeter的右侧框架显示配置。那些配置允许你配置测试元件的细节行为,对于一个元件什么能被配置依赖于它是一个什么类型的元件。测试树中的任何元素都将在JMeter的右侧框中显示控件。这些控件使您可以配置特定测试元素的行为。元素可配置的内容取决于元素的类型。
注意:敲黑板,敲脑壳啦!!!可以通过拖拉测试树周围的元件操作测试树。
2.4 保存测试计划
尽管不是必需的,但我们建议您在运行测试计划之前将其保存到文件中。要保存测试计划,请从“文件”菜单中选择“ 保存 ”或“ 将测试计划另存为... ”(对于最新版本,不再需要先选择“测试计划”元素)。
注意:敲黑板,敲脑壳啦!!!JMeter允许您保存整个测试计划树或仅保存其中的一部分。要仅保存位于“测试计划”树的特定“分支”中的元素,请在树中选择要从其开始“分支”的“测试计划”元素,然后单击鼠标右键以访问“ 另存为... ” 。 ”菜单项。或者,选择适当的测试计划元素,然后从“编辑”菜单中选择“ 将选择另存为... ”。
2.5 运行一个测试计划
要运行测试计划,请从“ 运行 ”菜单项中选择“ 开始 ”(Control + r)。当JMeter运行时,它在菜单栏下方部分的右端显示一个小绿色框。您也可以检查“ 运行 ”菜单。如果禁用了“ 开始 ”,并且启用了“ 停止 ”,则JMeter正在运行您的测试计划(或者至少认为它是这样)。
绿色框左侧的数字是活动线程数/线程总数。这些仅适用于本地运行的测试;使用客户端-服务器模式时,它们不包括在远程系统上启动的任何线程。
注意:敲黑板,敲脑壳啦!!!仅在调试测试计划时,才应使用此处所述的GUI模式。要运行实际负载测试,请使用CLI模式。
2.6停止测试
菜单中有两种类型的停止命令:
- 停止(Control + .)-如果可能,立即停止线程。许多采样器都是可中断的,这意味着可以提前终止活动采样。stop命令将检查所有线程是否已在默认超时(5000 ms = 5秒)内停止。[这可以使用JMeter属性jmeterengine.threadstop.wait进行更改]如果线程尚未停止,则会显示一条消息。可以重试Stop命令,但是如果失败,则必须退出JMeter进行清理。
- 关机(Control + ,)-请求线程在任何当前工作结束时停止。不会中断任何活动样本。模态关闭对话框将保持活动状态,直到所有线程停止。
如果关机时间太长。关闭“关机”对话框,然后选择“运行/停止”,或仅按Control+.。
在CLI模式下运行JMeter时,没有菜单,并且JMeter不会对诸如Control + . 之类的组合键作出反应。。因此,JMeter CLI模式将监听特定端口上的命令(默认为4445,请参见JMeter属性jmeterengine.nongui.port)。如果使用默认端口(例如,另一个JMeter实例),JMeter支持自动选择备用端口。在这种情况下,JMeter将尝试下一个更高的端口,直到到达JMeter属性jmeterengine.nongui.maxport)为止,该属性默认为4455。如果maxport小于或等于port,那么将不会进行端口扫描。
 所选端口显示在控制台窗口中。
 当前支持的命令是:
- Shutdown -正常关机
- StopTestNow-立即关闭
可以分别使用shutdown [.cmd|.sh]或stoptest [.cmd|.sh]脚本发送这些命令。这些脚本可以在JMeter bin目录中找到。仅当脚本从同一主机运行时,才会接受命令。
2.7 作用域规则
JMeter测试树包含元件总是分等级和顺序的。在测试树中的一些元件是严格分级(监听器,配置元件,后置处理器,前置处理器,断言,定时器),一 些主要是有序的(控制器,取样器)。当你创建测试计划时,你将创建一个有序的取样请求(通过取样器)列表,那些请求描述了一组步骤的执行。那些请求常组织 在也有序的控制器中。给出如下测试树:

测试树例子
请求的顺序是 One,Two,Three,Four。
一些控制器影响它的子元件的顺序,你可以在组件参考读到特定的控制器。
其他元素是分等级的。例如,一个断言在测试树中是分等级的。如果它的父元件是请求,它就被应用于那个请求。如果它的父元件是控制器,它就影响所有那个控制器下的所有请求。如下测试树:
分级例子
Assertion #1 仅被应用于请求 One, Assertion #2 仅被应用于 请求 Two 和 Three。
另一个例子,这次使用定时器:
复杂的例子
在这个例子里,请求的命名表现它们被执行的顺序。Timer #1 应用于 请求 Two, Three, 和 Four (注意对于分等级的元件怎样的顺序是不相关的)。Assertion #1 应用于请求Three。Timer #2 对所有请求有效。
希望那些例子使你弄清了配置(分等级的)元件如何被应用。如果你想每个请求都被树分叉拒绝,到它的父元件,到它的父元件的父元件,等等,每次收集所有它的父元件的配置元件,你将看到它如何工作的。
元件首部管理器, Cookie 管理器和授权管理器的配置和默认元件的配置被视为是不同的.默认元件配置的设置被并入取样器可以到达的一组值里了。然而来自管理器的设置没有并入。如果多于一个管理器在一个取样器范围中,仅仅一个被使用,但是现在没有办法指定那个被使用。
2.8 错误报告
JMeter将警告和错误报告给jmeter.log文件,以及有关测试运行本身的一些信息。JMeter 在其窗口右端的警告图标(三角形)旁边显示jmeter.log文件中找到的警告/错误数量。单击警告图标以在JMeter窗口的底部显示jmeter.log文件。偶尔可能会有一些错误,JMeter无法捕获和记录;这些将显示在命令控制台上。如果测试不符合您的预期,请检查日志文件,以防报告任何错误(例如,函数调用中的语法错误)。
通常不会在日志文件中报告采样错误(例如HTTP 404-未找到文件)。而是将它们存储为样本结果的属性。样本结果的状态可以在各种不同的监听器中看到。
3.小结
3.1GUI与CLI的区别
GUI(图形用户界面)
 Graphical User Interface(图形用户接口)
 用图形的方式,来显示计算机操作的界面,这样方便更直观。
CLI
 Command line User Interface(命令行用户接口)
 最常见的DOS命令操作。
 需要记忆一些常用的命令,操作不直观。
好了,今天有关如何创建一个测试计划(Test Plan)就分享到这里,感谢您的阅读,如果您觉得不错或者有帮助,就帮忙来一个推荐呗!!!
您的肯定就是我进步的动力。如果你感觉还不错,就请鼓励一下吧!记得随手点波 推荐 不要忘记哦!!!
别忘了点 推荐 留下您来过的痕迹
加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。未来的你肯定会感谢现在拼命的自己!

相关文章:
 
Jmeter(二) - 从入门到精通 - 创建测试计划(Test Plan)(详解教程)
1.简介 上一篇文章已经教你把JMeter的测试环境搭建起来了,那么这一篇我们就将JMeter启动起来,一睹其芳容,首先我给大家介绍一下如何来创建一个测试计划(Test Plan)。 2.创建一个测试计划(Test Plan&#x…...
Autosar诊断实战系列06-详解Dem中Event的NvM存储
本文框架 前言1. Dem触发NvM存储的基本流程2. Dem触发NvM存储的layout格式及内容2.1 Event在NvM中的layout格式2.2 Event在NvM中的存储内容2.3 Dem中Event与DTC的存储关系3.组合式Event(多个Event对应一个DTC)的存储处理3.1 仅分配一个Memory Entry3.2 检索方式3.3 一对一方式前…...
 
04 todoList案例
React全家桶 一、案例- TODO List 综合案例 功能描述 动态显示初始列表添加一个 todo删除一个 todo反选一个 todotodo 的全部数量和完成数量全选/全不选 todo删除完成的 todo 1.1 静态组件构建 将资料包中的todos_page/index.html中核心代码添加到Todo.jsx文件中,…...
 
海睿思分享 | 浅谈企业数据质量问题
一、数据质量问题场景 在日常工作中,业务领导经常通过BI系统来了解各项业务的业绩情况。倘若某天,他打开某张核心报表,发现当日某个区域的数据一直是空白的。BI开发人员经过几个小时的排查分析,发现是当日该区域的销售数据存在产…...
神经网络:激活函数
在计算机视觉中,激活函数是神经网络中的一种非线性函数,用于引入非线性变换和非线性特性到网络中。激活函数的作用、原理和意义如下: 1. 引入非线性变换: 神经网络的线性组合层(如卷积层和全连接层)只能表…...
 
图像色彩增强相关论文阅读-Representative Color Transform for Image Enhancement(ICCV2021)
文章目录 Representative Color Transform for Image EnhancementAbstractIntroductionRelated workMethod实验Conclusion Representative Color Transform for Image Enhancement 作者:Hanul Kim1, Su-Min Choi2, Chang-Su Kim3, Yeong Jun Koh 单位:S…...
 
Elasticsearch介绍与应用
Elasticsearch介绍与应用 Elasticsearch的官方文档。 Elasticsearch官网参考文档:https://www.elastic.co/guide/index.html Elasticsearch官方下载地址:https://www.elastic.co/cn/downloads/elasticsearch mvnrepository依赖库地址:http…...
JavaEE规范
Servlet:用于开发 Web 应用程序的 API,定义了处理 HTTP 请求和响应的方式。JSP(JavaServer Pages):一种在服务器端生成动态网页的技术,允许将 Java 代码嵌入到 HTML 页面中。(注意JSP本质就是一个Servlet)J…...
嵌入式实时操作系统的设计与开发New(八)
创建线程 用户在基于RTOS开发应用程序前,首先要创建线程。 用户创建一个线程时须指定用户希望采用的调度策略。 例如,用户想创建一个周期性执行的线程: acoral_period_policy_data_t* data; data acoral_malloc(sizeof(acoral_period_poli…...
 
MySQL事务相关笔记
杂项 InnoDB最大特点:支持事务和行锁; MyISAM不支持事务 介绍 一个事务是由一条或者多条对数据库操作的SQL语句所组成的一个不可分割的单元,只有当事务中的所有操作都正常执行完了,整个事务才会被提交给数据库。事务有如下特性…...
 
如何利用AI高效率快速调色
在设计行业中,时间是非常宝贵的资源,而设计师们常常需要应对繁忙的工作日程和紧迫的截止日期。为了提高工作效率和节省时间,越来越多的设计师开始利用人工智能(AI)技术中的高效调色功能。本文将介绍如何利用AI高效率快…...
 
数据结构--顺序表的基本操作--插入 and 删除
数据结构–顺序表的基本操作–插入 顺序表的插入操作 实现目标 ListInsert(&L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。 typedef struct {int data[MaxSize];int len; }Sqlist;代码实现: #include <stdio.h> #include <stdlib.h> …...
 
BCSP-玄子Java开发之Java Web编程CH01_初识动态网页
BCSP-玄子Java开发之Java Web编程CH01_初识动态网页 1.1 B/S架构 B/S架构:浏览器/服务器 程序完全部署在服务器上使用浏览器访问服务器无需单独安装客户端软件 为什么要使用B/S架构 B/S与C/S比较B/S架构C/S架构软件安装浏览器需要专门的客户端应用升级维护客户…...
 
【软件教程】农林生环、水文、海洋、水环境、大气科学、人工智能、碳中和、碳排放、3S、R与统计等软件模型
本文涉及领域水文水资源、大气科学、农林生态、地信遥感、统计分析、编程语言等... 从软件基础到实践案例应用操作,手把手教学,提供永久回放观看和助学群长期辅助指导。适合课题组人员一站式学习,科研人员技术提升、企业单位工程项目、高校论…...
 
如何加入开源社
开源社成立于 2014 年,是由志愿贡献于开源事业的个人成员,依 “贡献、共识、共治” 原则所组成,始终维持厂商中立、公益、非营利的特点,是最早以 “开源治理、国际接轨、社区发展、项目孵化” 为使命的开源社区联合体。开源社积极…...
软件开发中的破窗效应
应该有很多人已经知道破窗效应【注1】这个社会学 (犯罪学)的词语,破窗效应最先由社会学家James Q. Wilson和George L. Kelling在一篇名为《Broken Windows》的文章中提出【注2】: “一个房子如果窗户破了,没有人去修补…...
 
机器视觉初步6-1:基于梯度的图像分割
把基于梯度的图像分割单独拿出来。 文章目录 一、图像梯度相关算子的原理1. Sobel算子2. Prewitt算子3. Roberts算子 二、python和halcon算子实现1.python实现2.halcon实现 基于梯度的图像分割方法利用像素之间的梯度信息来进行图像分割。 梯度 1是图像中像素灰度值变化最快的…...
 
从0开始,精通Go语言Rest微服务架构和开发
说在前面 现在拿到offer超级难,甚至连面试电话,一个都搞不到。 尼恩的技术社区中(50),很多小伙伴凭借 “左手云原生右手大数据”的绝活,拿到了offer,并且是非常优质的offer,据说年…...
 
Sui x KuCoin Labs夏季黑客松|本周Workshop预告
自Sui x KuCoin Labs夏季黑客松推出以来已有四周的时间,期间收获了众多开发者的积极报名和热情参与。随着黑客松报名即将进入尾声,同期举办的Workshop也迎来了本周的最后一波。本周的黑客松Workshop邀请到MoveEX和Mirror World的负责人作为嘉宾为大家带…...
 
从电源 LED 读取智能手机的秘密?
研究人员设计了一种新的攻击方法,通过记录读卡器或智能手机打开时的电源 LED,使用 iPhone 摄像头或商业监控系统恢复存储在智能卡和智能手机中的加密密钥。 众所周知,这是一种侧信道攻击。 通过密切监视功耗、声音、电磁辐射或执行操作所需…...
 
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
 
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
「Java基本语法」变量的使用
变量定义 变量是程序中存储数据的容器,用于保存可变的数据值。在Java中,变量必须先声明后使用,声明时需指定变量的数据类型和变量名。 语法 数据类型 变量名 [ 初始值]; 示例:声明与初始化 public class VariableDemo {publi…...
 
NineData数据库DevOps功能全面支持百度智能云向量数据库 VectorDB,助力企业 AI 应用高效落地
NineData 的数据库 DevOps 解决方案已完成对百度智能云向量数据库 VectorDB 的全链路适配,成为国内首批提供 VectorDB 原生操作能力的服务商。此次合作聚焦 AI 开发核心场景,通过标准化 SQL 工作台与细粒度权限管控两大能力,助力企业安全高效…...
 
安宝特方案丨从依赖经验到数据驱动:AR套件重构特种装备装配与质检全流程
在高压电气装备、军工装备、石油测井仪器装备、计算存储服务器和机柜、核磁医疗装备、大型发动机组等特种装备生产型企业,其产品具有“小批量、多品种、人工装配、价值高”的特点。 生产管理中存在传统SOP文件内容缺失、SOP更新不及、装配严重依赖个人经验、产品装…...
 
RocketMQ 客户端负载均衡机制详解及最佳实践
延伸阅读:🔍「RocketMQ 中文社区」 持续更新源码解析/最佳实践,提供 RocketMQ 专家 AI 答疑服务 前言 本文介绍 RocketMQ 负载均衡机制,主要涉及负载均衡发生的时机、客户端负载均衡对消费的影响(消息堆积/消费毛刺等…...
 
【VLAs篇】02:Impromptu VLA—用于驱动视觉-语言-动作模型的开放权重和开放数据
项目描述论文标题Impromptu VLA:用于驱动视觉-语言-动作模型的开放权重和开放数据 (Impromptu VLA: Open Weights and Open Data for Driving Vision-Language-Action Models)研究问题自动驾驶的视觉-语言-动作 (VLA) 模型在非结构化角落案例场景中表现不佳…...
