Jmeter 结构、原理介绍
Jmeter结构、原理介绍
一、Jmeter 简介
1.是基于java语言的开源的应用软件。
2.可以进行接口测试、性能测试、接口及性能的自动化测试。
二、Jmeter体系结构
元件:可以理解为每一个菜单。如THHP请求、响应断言。元件组:可以理解为同一类型菜单的集合。如取样器、断言
1.取样器(Sampler):模拟用户的请求操作。如HTTP请求、WebService请求、Java请求等。
2.断言(检查点):验证结果的正确性。如响应断言。
3.监听器:收集测试结果信息。如查看结果树、聚合报告。
下面的4、5、6是为取样器提供各种所需要的数据。
4.前置处理器:在请求发送前做的环境及参数的准备。
5.配置元件:提供预备的数据等。如CSV、函数助手。
6.后置处理器:处理服务器的返回结果。通常用正则进行关联。
7.逻辑控制器:控制多个请求发送的循环次数及顺序等。
8.定时器:控制多个请求发送的时间频次。
9.线程组:模拟大量用户负载运行场景。
三、Jmeter运行原理
1.通过线程组来驱动多个线程的方式运行。
2.运行在Jvm虚拟机上。
3.可以进行分布式测试。(分为控制机和负载机)
控制机:运行负载测试、管理远程多台负载机
负载机:运行负载测试、向控制机发送测试结果。
具体运行逻辑:
a、启动Agent ——> b、控制机连接负载机 ——> c、控制机发送运行指令 ——> d、 负载机运行并回传测试结果 ——> e、控制机收集测试结果
四、Jmeter测试计划
1.脚本中最多只能有一个测试计划。
2.测试计划中至少要有一个线程组。
3.线程组中至少要有一个取样器。
4.线程组中至少要有一个监听器。
五、Jmeter源文件目录介绍
1.bin:放置各项配置文件、启动文件、快捷方式、启动jar包、示例脚本
2.docs:Jmeter API 离线帮助文档
3.extras:辅助功能。用于Ant、jenkins集成使用
4.lib:存放jar包、junit测试类
Jmeter 结构、原理介绍的更多相关文章
- jmeter工作原理介绍,以及常见错误
JMeter结果树响应数据中文乱码解决办法 打开jmeter配置文件搜索encoding修改编码格式改为utf-8 Jmeter服务器反馈登陆不成功问题 导入到JMeter后,执行场景,发现登录校验成 ...
- Jmeter 结构、原理介绍 Jmeter结构、原理介绍(1)
一.Jmeter 简介 1.是基于java语言的开源的应用软件. 2.可以进行接口测试.性能测试.接口及性能的自动化测试. 二.Jmeter体系结构 元件:可以理解为每一个菜单.如THHP请求.响应断 ...
- Jmeter结构体系及运行原理
Jmeter结构体系 把Jmeter的结构体系拆分为三维空间,如图: X1~X5:是负载模拟的一个过程,使用这些组件来完成负载的模拟: X1:选择协议,模拟用户请求,检查服务器响应是否正确,然后收集结 ...
- MYSQL索引结构原理、性能分析与优化
[转]MYSQL索引结构原理.性能分析与优化 第一部分:基础知识 索引 官方介绍索引是帮助MySQL高效获取数据的数据结构.笔者理解索引相当于一本书的目录,通过目录就知道要的资料在哪里, 不用一页一页 ...
- [转]MySQL主从复制原理介绍
MySQL主从复制原理介绍 一.复制的原理 MySQL 复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新.删除等等).每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新,以 ...
- 分布式文件系统FastDFS原理介绍
在生产中我们一般希望文件系统能帮我们解决以下问题,如:1.超大数据存储:2.数据高可用(冗余备份):3.读/写高性能:4.海量数据计算.最好还得支持多平台多语言,支持高并发. 由于单台服务器无法满足以 ...
- 高性能消息队列 CKafka 核心原理介绍(上)
欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:闫燕飞 1.背景 Ckafka是基础架构部开发的高性能.高可用消息中间件,其主要用于消息传输.网站活动追踪.运营监控.日志聚合.流式 ...
- zookeeper原理介绍
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt354 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它 ...
- V7000存储数据恢复_底层结构原理拆解及Mdisk磁盘掉线数据恢复方法
Storwize V7000(也就是我们常说的V7000)是新推出的一款中端存储系统,这款系统的定位虽然在中端,但是Storwize V7000提供有存储管理功能,这一功能以前只有高端存储才拥有(例如 ...
随机推荐
- [C#]RichTextBox实现拖放
amespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeC ...
- GUI的最终选择Tkinter模块初级篇
一.Tkinter模块的基本使用 1)实例化窗口程序 import tkinter as tk app = tk.Tk() app.title("FishC Demo") app. ...
- python学习 day3 (3月4日)---字符串
字符串: 下标(索引) 切片[起始:终止] 步长[起始:终止:1] 或者-1 从后往前 -1 -2 -3 15个专属方法: 1-6 : 格式:大小写 , 居中(6) s.capitalize() s ...
- 核心一:DI
1.DI:中文名称:依赖注入 2.英文名称:(Dependency Injection) 3.DI是什么?? 3.1 DI和IoC是一样的 3.2 当一个类(A)中需要依赖另一类(B)对象时,把B赋值 ...
- 多分类评价指标python代码
from sklearn.metrics import precision_score,recall_score print (precision_score(y_true, y_scores,ave ...
- Maven进行install的时候报错,COMPILATION ERROR : Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.13:test (default-test) on project cmu: There are test failures.
maven进行install的时候,test类里面报错: COMPILATION ERROR : [INFO] -------------------------------------------- ...
- SGU 271 Book Pile (双端队列)
题意:n,m,k,表示有一个长度为 n 的序列,有 m 个操作,操作有 2 种,第一种是 ADD 在前面添加一个串,第二种是把前 k 个进行翻转,问你最后的序列是什么样的. 析:很明显,如果直接模拟, ...
- 调试问题集之——Max10中配置完成后程序不能运行
CONF_DONE信号是一个双向信号并且是Open-Drain.在配置过程中和配置之前作为输出,且为低电平.配置完成之后CONF_DONE作为输入脚,因为Open-Drain,所以必须由外部拉高,但二 ...
- MySQL中@变量的妙用
背景需求:如下图所示,需要将下面为空的字段值,填充为第一行所示的值 第一次处理失败了 第二次使用成功 使用的SQL语句如下: set @tmp_var=''; select b.id,b.table_ ...
- JS库汇总[重要]
库名称 说明 附加说明 URI 一款js 操作URL的插件 功能十分强大.可以增加 .修改.删除.参数 1.Animate.css 2.Hover.css 3.jQuery 4.WebUploa ...