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

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.lryc.cn/news/294723.html

相关文章:

  • 大数据Zookeeper--案例
  • VS编译器对scanf函数不安全报错的解决办法(详细步骤)
  • vscode连接ssh报错
  • C++ 哈希+unordered_map+unordered_set+位图+布隆过滤器(深度剖析)
  • 深入理解Netty及核心组件使用—下
  • vscode 突然连接不上服务器了(2024年版本 自动更新从1.85-1.86)
  • element-ui link 组件源码分享
  • 序列化和反序列化、pytest-DDT数据驱动
  • Spring Boot整合MyBatis Plus实现基本CRUD与高级功能
  • CSS 闪电按钮效果
  • 【Go-Zero】Error: only one service expected goctl一键转换生成rpc服务错误解决方案
  • 从头开始构建和训练 Transformer(上)
  • JVM-JVM内存结构(一)
  • React Emotion 如何优雅的使用样式(一)
  • 1+X运维试题样卷A卷(初级)
  • QT QDialog 中的按钮,如何按下后触发 accepted 消息?
  • seata分布式事务
  • Python HttpServer 之 简单快速搭建本地服务器,并且使用 requests 测试访问下载服务器文件
  • 【Python 实战】---- 实现批量给 pdf 插入 excel 动态生成的印章
  • 51单片机实验课二
  • 1-4 动手学深度学习v2-线性回归的简洁实现-笔记
  • SQL如何实现数据表行转列、列转行?
  • 【React】redux状态管理、react-redux状态管理高级封装模块化
  • HAProxy 和负载均衡概念简介
  • 【go】ent操作之CRUD与联表查询
  • 服务器性能监控管理方法及工具
  • AUTOSAR汽车电子嵌入式编程精讲300篇-基于FPGA和CAN协议2.0B的总线控制器研究与设计
  • 14.1 Ajax与JSON应用(❤❤)
  • ffmpeg命令生成器
  • JavaScript基础速成