Jmeter 01 -概述线程组

1、Jmeter:概述

1.1 是什么?

        Jmeter是Apache公司使用Java 开发的一款测试工具

1.2 为什么?

        高效、功能强大

        模拟一些高并发或多次循环等特殊场景

1.3 怎么用?

下载安装

  • 1、下载jmeter,解压缩
  • 2、安装Java环境(jmete 和 Java 环境的关系,类似于MP3文件和播放器关系)

        注意:安装路径不能有中文字符、空格

        安装JDK +JRE

点击下图的文件,代表文件安装成功

  • 3、简单了解Jmeter 的目录结构

                bin:存储了Jmeter的可执行程序,比如启动程序

                lib : 存储了Jmeter整合的功能(一些.jar文件的小程序)

  • 4、启动Jmeter

                启动方式1:bin/ApacheJMeter.jar双击

                启动方式2:存储了Jmeter整合的功能(一些.jar文件的小程序)

                                        jmeter.sh  linux下的启动程序

  • 5、编写一个Jmeter版本的测试案例

1.4 Jmeter 的作用优点以及缺点(了解)

作用:

  • 接口测试
  • 性能测试:内在  ---------- 测程序的算法,程序的效率响应时间
  • 压力测试:外在  ---------- 并发用户数,最多用户数导致程序崩溃,外在负载
  • Web自动化测试
  • 数据库测试:测试数据库,通过程序实现连接数据库
  • JAVA程序测试

优点

  • 开源、免费
  • 支持多协议:http https  ftp ftps ....
  • 小巧
  • 功能强大

缺点

  • 不支持IP欺骗 
  • 不支持前端测试

2、Jmeter组件:线程组

Jmeter:内置许多小功能()

2.1  是什么?

进程:一个正在执行的程序就对应一个线程,一个进程里面可以同时执行多个线程(比如百度网盘上传多张图片的同时也可以看网盘的内容,如视频)

  • 线程:进程中的执行线索(一个进程有多个执行线索)
  • 线程组:按照线程性质对线程进行分组,为了方便管理线程(如班级分组)
  • 并发执行:多个线程同时执行,如同时下载3部电影;特点:执行结束的顺序和线程启动的顺序不一定一致,如同时下载3部电影,先下载的不一定先下载完成,后下载的不一定后下载完成
  • 顺序执行:按照线程的启动顺序挨个执行,如播放音乐顺序播放

2.2 为什么?

方便管理

2.3 怎么用?(基本使用)

2.3.1  三者关系

 三者关系:进程有多个线程组,线程组可以有多个线程

  •         进程 ----  测试计划
  •         线程组 ---- 线程组
  •         线程 --- 线程组属性的线程数

例子:

组01有2个,组02有3个,一共返回5个

2.3.2 线程组的默认情况下

        默认情况下,线程组中的线程是并发执行的

        每一个线程组都要执行组内的http请求

2.3.3 怎么设置线程组顺序执行?

A、勾选测试计划的第一个复选框(独立运行每个线程组)

2.3.4 介绍取样器

线程组练习--增删改查

1、将上图的建立的线程先禁用

2、建立新线程

3、增加报文体数据和信息头

增加信息头,

记:Jmeter里万物皆组件

4、执行5、增加删除操作

2.4 练习:学生管理系统增删改查实现以及优化

        把共同属性(可复用并发)抽取出去,利用控件方式进行复用:可以使用http请求默认值抽取共同的ip端口号 |协议 | 编码集 | 等信息

        测试计划  -- >右击 --- >添加 ---> 配置文件  ---> http请求默认值

        作用:通过复用属性简化实现,提高测试效率

1、建立http请求默认值

HTTP请求字段内容为空,使用默认值

2.5 线程组高级(初始化与销毁线程组)

实现了些内置功能 

2.5.1 线程组属性

  • 属性1: 线程数 --- 模拟用户数
  • 属性2: 时间值 --- 在指定时间内启动所有线程
  • 属性3:循环数 --- 单个用户访问的次数

如下图:

不一定几秒就在几秒内,和本身的性能有关

2.5.2 调度器 * 循环测试

  • 循环次数设置为永远
  • 设置启动延迟x 和持续时间y

                在x秒后访问数据,并持续y秒

  • 设置启动时间M和结束时间N(在版本5.6.2版本不存在了)

                在M时开始访问,在N时结束

注意事项:2和3实现不能同时使用,否则矛盾了

        

图片:

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

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

相关文章

力扣53. 最大子数组和(滑动窗口,动态规划)

Problem: 53. 最大子数组和 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 思路1:滑动窗口 1.为求出最大连续的子数组和,我们逻辑上假设有一个窗口在原数组上滑动, 欲求出最大连续,则需要保证窗口中的所有元素和最起码大于0; 2.即当当前窗口中的元素值的和小于0…

从零开始手写mmo游戏从框架到爆炸(六)— 消息处理工厂

就好像门牌号一样,我们需要把消息路由到对应的楼栋和楼层,总不能像菜鸟一样让大家都来自己找数据吧。 首先这里我们参考了rabbitmq中的topic与tag模型,topic对应类,tag对应方法。 新增一个模块,专门记录路由eternity-…

深入探索 Stable Diffusion:AI图像创新的新纪元

深入探索 Stable Diffusion:AI图像创新的新纪元 介绍 Stable Diffusion 的核心功能和应用场景Stable Diffusion 架构解析深入 Stable Diffusion 的关键组件变分自编码器(VAE)生成对抗网络(GAN)注意力机制优化算法数据集…

泛型、Trait 和生命周期(上)

目录 1、提取函数来减少重复 2、在函数定义中使用泛型 3、结构体定义中的泛型 4、枚举定义中的泛型 5、方法定义中的泛型 6、泛型代码的性能 每一门编程语言都有高效处理重复概念的工具。在 Rust 中其工具之一就是 泛型(generics)。泛型是具体类型…

GEE Colab——如何利用Matplotlib在colab中进行图形制作

在colab中绘制图表 笔记本的一个常见用途是使用图表进行数据可视化。Colaboratory 提供多种图表工具作为 Python 导入,让这一工作变得简单。 Matplotlib Matplotlib 是最常用的图表工具包,详情请查看其文档,并通过示例获得灵感。 线性图 线性图是一种常见的图表类型,用…

C++迷宫游戏详解

个人主页:[PingdiGuo_guo] 收录专栏:[C干货专栏] 大家好呀,我是PingdiGuo_guo,今天我们来学习用C实现一个迷宫游戏。 目录 1.迷宫的具体步骤 1.1.迷宫的初始化 1.2.寻路算法 1.DFS算法 2.BFS算法 1.3.移动 2.总结 C迷宫游…

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--强化学习、模仿学习、机器人

专属领域论文订阅 关注{晓理紫|小李子},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 如果你感觉对你有所帮助,请关注我,每日准时为你推送最新论文。 为了答谢各位网友的支持,从今日起…

SpringCloud-创建多模块项目

在微服务架构中,项目的组织结构对于代码的维护和团队的协作至关重要。Spring Cloud作为一个强大的微服务框架,提供了丰富的功能和组件,同时也支持多模块项目的创建,使得代码结构更加清晰、易于管理。本文将介绍如何使用 Spring Cl…

PiflowX新增Apache Beam引擎支持

参考资料: Apache Beam 架构原理及应用实践-腾讯云开发者社区-腾讯云 (tencent.com) 在之前的文章中有介绍过,PiflowX是支持spark和flink计算引擎,其架构图如下所示: 在piflow高度抽象的流水线组件的支持下,我们可以…

推理系统学习笔记

一些学习资料 最近对MLsys比较感兴趣,遂找些资料开始学习一下 https://fazzie-key.cool/2023/02/21/MLsys/https://qiankunli.github.io/2023/12/16/llm_inference.htmlhttps://dlsyscourse.orghttps://github.com/chenzomi12/DeepLearningSystem/tree/main/04Infe…

【Flink入门修炼】1-2 Mac 搭建 Flink 源码阅读环境

在后面学习 Flink 相关知识时,会深入源码探究其实现机制。因此,需要现在本地配置好源码阅读环境。 本文搭建环境: Mac M1(Apple Silicon)Java 8IDEAFlink 官方源码 一、 下载 Flink 源码 github 地址:h…

记录一次su 普通用户报错的事件

故障信息: 使用root用户可以登录服务器,但是使用普通用户不能登录。报错截图信息如下: 经仔细排查发现:/bin 的权限发生了更改,更改为555 ls -ld /bin/ 查看权限 再次尝试su 发现成功。

【图像文本化】Base64编解码OpenCV4中 Mat 对象

学习《OpenCV应用开发:入门、进阶与工程化实践》一书 做真正的OpenCV开发者,从入门到入职,一步到位! 前言 很多时候在开发中,需要保存图像为文本形式,以便于存储与传输。最常见的就是把图像文件编码为Ba…

五、机器学习模型及其实现1

1_机器学习 1)基础要求:所有的数据全部变为了特征,而不是eeg信号了 python基础已经实现了特征提取、特征选择(可选)进行了数据预处理.预处理指对数据进行清洗、转换等处理,使数据更适合机器学习的工具。S…

thinkphp6入门(19)-- 中间件向控制器传参

可以通过给请求对象赋值的方式传参给控制器&#xff08;或者其它地方&#xff09;&#xff0c;例如 <?phpnamespace app\middleware;class Hello {public function handle($request, \Closure $next){$request->hello ThinkPHP;return $next($request);} } 然后在控制…

ubuntu 上安装和配置Apache2+Subversion

目录 一、安装Apache2和SVN 二、Apache2设置 三、subversion配置 四、创建仓库和设置权限 五、仓库备份和恢复 系统环境 Ubuntu Linux (20.04) apache2 Subversion(1.13.0) 一、安装Apache2和SVN 通过命令在线安装apache2和subversion apt-get install apache2 libap…

06 MP之自动填充+SQL执行的语句和速度分析

1. 自动填充 在项目中有一些属性&#xff0c;比如常见的创建时间和更新时间可以设置为自动填充。 1.1 实例 需求: 将创建时间和更新时间设置为自动填充, 这样每次插入数据时可以不用理会这两个字段 1.1.1 在数据库增加字段 默认开启驼峰映射 createTime --> create_time…

回归预测 | Matlab实现OOA-CNN-LSTM-Attention鱼鹰算法优化卷积长短期记忆网络注意力多变量回归预测(SE注意力机制)

回归预测 | Matlab实现OOA-CNN-LSTM-Attention鱼鹰算法优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&#xff09; 目录 回归预测 | Matlab实现OOA-CNN-LSTM-Attention鱼鹰算法优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&…

[NOIP2017 提高组] 宝藏

[NOIP2017 提高组] 宝藏 题目背景 NOIP2017 D2T2 题目描述 参与考古挖掘的小明得到了一份藏宝图&#xff0c;藏宝图上标出了 n n n 个深埋在地下的宝藏屋&#xff0c; 也给出了这 n n n 个宝藏屋之间可供开发的 m m m 条道路和它们的长度。 小明决心亲自前往挖掘所有宝…

JWT令牌 | 一个区别于cookie/session的更安全的校验技术

目录 1、简介 2、组成成分 3、应用场景 4、生成和校验 5、登录下发令牌 &#x1f343;作者介绍&#xff1a;双非本科大三网络工程专业在读&#xff0c;阿里云专家博主&#xff0c;专注于Java领域学习&#xff0c;擅长web应用开发、数据结构和算法&#xff0c;初步涉猎Pyth…