1、ServerAgent是服务端的插件
2、
下载成功后,复制JmeterPlugins-Extras.jar和JmeterPlugins-Standard.jar两个文件,放到jmeter安装文件中的lib/ext中,重启jmeter,即可看到该监视器插件。如下图:

一、资源监控:Perfmon Metrics Collector(性能度量收集器)
测试计划---线程组-- 监控--jp@gc-PerfMon Metrics Collector(CPU,内存Memory,兹盘Disks,网络Network/o)
必须先启动端口4444:
cd C:\a1
startAgent.bat
cpu不超过百分之80就是好的:
内存不超过百分80:

二、响应时间和吞吐量--聚合函数---
1、jp@gc-Transactions per Second (每秒的事务数)
2、jp@gc-Hits per Second (每秒的点击数)
(选择中图形后右键第二个可以保存。)
3、jp@gc-Response Times Over Time:(事务响应时间)
 CPU     Memory(内存)
 Disks I/0 (磁盘I/0) Network I/O(网络I/O )
线程组 :
线程数:   Ramp-up  Period(in seconds) :代表每个请求发生的总时间间隔)
(如果我的请求数目是5,而这个参数是10,那么每个请求之间的间隔就是10/5,也就是2秒)
 循环次数:

三、网络单位:
在计算机网络或者是网络运营商中,一般,宽带速率的单位用bps(或b/s)表示;bps表示比特每秒即表示每秒钟传输多少位信息,是bit per second的缩写。在实际所说的1M带宽的意思是1Mbps(是兆比特每秒Mbps不是兆字节每秒MBps)。
 
建议用户记住以下换算公式:

1B=8b 1B/s=8b/s(或1Bps=8bps)

1KB=1024B 1KB/s=1024B/s

1MB=1024KB 1MB/s=1024KB/s

四、即TRT:事务响应时间,性能测试中,最重要的两个指标的另外一个。该插件的主要作用是在测试脚本执行过程中,监控查看响应时间的实时平均值、整体响应时间走向等

五、关联:
后置处理器:——正则表达试---(.+?)(.*)
 模板 $1$
 匹配数 1
正则表达:
 
具有特殊含义的字符:
  ( ) :括号界定期望获取字符串的匹配模式
  . (字符点): 匹配任何单个字符
  +:一次或者多次
 ?:找到匹配的结果后立刻停止查找
  \ : 转义字符
  [ ] : 匹配符合 [] 内的字符
具有特殊含义的字符:
 [0-9] 匹配所有数字字符
 [a-z] 匹配所有小写字母字
 [^0-9] 匹配所有非数字字
 [^a-z] 匹配所有非小写字
 ^ 匹配字符开头的字符
 $ 匹配字符结尾的字符

加入“后置处理器”->“正则表达式提取器”:引用名称即使用的参数名;填入正则表达式;模板选取匹配的组;匹配数字为匹配的个数,负数表示全部匹配;缺省值为没有匹配到时的取值。示例中用正则表达式匹配出产品id作为后续使用的参数。提取到的参数,调用时用${product_id_1},${product_id_2},${product_id_3}……;如果想要得到匹配出的参数的个数,用${product_id_matchNr};如果想随机选取其中一个,只需将匹配数字设为0,使用${product_id}调用即可。可以一次匹配多组;示例中只匹配了一个,假如正则表达式为name="chkProductIds" id="chk(.+?)" value="(.+?)",就会有两组参数;想获得匹配到的组个数用${product_id_g};模板针对的是匹配到的字符串再做组的区分,比如希望${product_id}取出的是第二组参数的值,用$2$。

六、参数化:
1:登录认证信息
2:一些和时间相关的,违反时间约束的
3;一些受其他字段约束
配置元件----CSV Data Set Config (配置元件里的第一个)
1,先在文本txt里写入变量名和值,在CSV Data Set Config 里加入地址和文本名(变量名)。
2,调用时${变量名}

七、断言:(检查点:)
断言---添加响应断言:
1包括:返回结果包括你指定的内容。
2匹配:根据指定内容进行匹配。
3Epuals:返回结果与你指定结果一致。
4Substring:返回结果是指定结果的字符串。
5否:不进行匹配。
二、Size Assertion(返回值大小断言)
三、断言持续时间(超出时间断言)

6。配置元件---事务控制器(什么都不勾就是计算采样器的时间而不会计计算器时间,就是忽略时间)
1)generate parent sample 生成父样本(勾第一个就是所有在事务控制器下的采样器都会在它下面显示,没什么用)
2)lnclude duration oftimer and pre-post processors in generated sample
(勾第二个在它下面的所有采样器,事务会计算加上计时器的时间)
(在生成的样本中包括计时器和前置处理器的持续时间 )

思考时间:
计时器:集合点:Synchronizing Timer(配置元件里倒数第四个)
Numder of Simulated Users to Group by:10(第一框代表10个用户)
Timeoutin milliseconds:1000(第二个框代表1000毫秒,集合之后等待1秒钟,10个用户同时释放)

四、在bin目录下---选择jmeter.properties 打开查找框输入以下就可以修改成xmL格式,默认格式scv
xmL格式比较消耗资源
jmeter.save.saveservice.output_format

八、监视器
1聚合报告
Summary Report
? Label:取样器名称
? Samples:运行时得到的取样器响应结果个数
? Min:所有取样器结果的响应时间最小值
? Max:所有取样器结果的响应时间平均值
? Std.Dev.:所有取样器结果的响应时间标准差
? Error%:出错的取样器结果占所有取样器结果的比例
? Throughput:每秒钟响应的取样器结果个数
? KB/sec:每分钟响应的数据流量
? Avg.Bytes:所有取样器返回 http response data 字节数的平均值

九、Jmeter性能最佳实践
 1、使用最新版的Jmeter
 2、使用命令行模式运行测试
 3、配置合适的Java虚拟机内存大小
 4、尽量使用CSV格式输出结果
 5、合理的使用Post-Processor和Assertion
 6、Regular Expression Extractor注意作用域的合理设置
 7、尽量避免使用XPath Extractor
 8、尽量少的使用Listener并注意作用域

12、负载生成器:联机负载  在bin目录下打开------jmeter-server.bat

1、在负载生成器(slaves)启动 jmeter-server;
 2、在控制台(master)编辑 jmeter.properties文件。查找remote_hosts= 并根据实际情况添
加slave的IP地址到列表中;
 3、在master端启动 Jmeter;
 4、开始运行。

十、Jmeter组件执行顺序
测试计划的元素执行是有序的,通过以下方式
 1–配置节点
 2–前置处理器
 3–定时器
 4–取样器
 5–后置处理器(只在有结果可用情况下执行
 6–断言(只在有结果可用情况下执行)
 7–监听器(只在有结果可用情况下执行)

十一、逻辑控制器:
1、循环控制器:控制循环的。
2、ForEach控制器是跟配置元件里的用户变量使用的:用户变量
可以输出变量名,生成变量。
3、Critical Section Controller (诸存采样器,提供一块空间来存诸采样器的)
4、一次控制器:在它下面添加采样器的不管你循环多少次都会只是运行一次。

ForEach Controller
foreach控制器与用户定义变量(udv)一起使用。它是一个
当我们添加的每个采样器或控制器执行时,循环控制器的变量
根据要重复的次数一次或多次。

Transaction Controller事务控制器
事务控制器生成一个额外的示例,用于测量

执行嵌套测试元素所用的总时间。
If Controller:就是if判断变量是否为True
if控制器允许用户控制下面的测试元素

孩子们)是否逃跑。

十二、资源监控:
可以右击图表,选择保存图片。
监听每秒点击数:在监听器中添加jp@gc - Hits per Second

监听吞吐率即每秒的事务数:在监听器中添加jp@gc - Transactions per Second

5、做好性能测试需要掌握的知识:

掌握一门编程语言
    掌握计算机原理和操作系统知识
    良好的网络基础
    掌握数据库知识
    中间件(apache,tomcat)
    常用抓包工具
    性能测试工具

jmeter基础使用的更多相关文章

  1. JMeter基础之--元件的作用域与执行顺序

    前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了 ...

  2. JMeter基础之一 一个简单的性能测试

    JMeter基础之一 一个简单的性能测试 上一节中,我们了解了jmeter的一此主要元件,那么这些元件如何使用到性能测试中呢.这一节创建一个简单的测试计划来使用这些元件.该计划对应的测试需求. 1)测 ...

  3. Jmeter基础之---jmeter基础概念

    Jmeter基础之---jmeter基础概念 JMeter 介绍: 一个非常优秀的开源的性能测试工具. 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来. JMeter 介绍: 一个非常优 ...

  4. jmeter 基础功能详解

    jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...

  5. 转 JMeter基础之--元件的作用域与执行顺序

    前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了 ...

  6. 性能测试工具JMeter 基础(六)—— 测试元件: 线程组

    线程组的定义: 线程组是测试计划执行的入口,所有的逻辑控制器和取样器都必须在线程组下,其他的元件根据位置的不同作用域是不同的. 线程组是每个线程都是独立运行测试脚本,一个线程组就等于一个用户,通过多个 ...

  7. JMeter基础知识

    JMeter介绍 JMeter是开源的性能测试工具和接口测试工具,工作原理和Loadrunner一样:作为浏览器和WebServer之间的网关,捕获Browser请求和WebServer响应,然后通过 ...

  8. JMeter基础知识系列二

    1.从web服务或其他远程服务的角度来看,Jmeter很像是一款浏览器,但实际他并不是浏览器,Jmeter支持浏览器的部分操作.如:Jmeter不支持hmtl页面中包含的JavaScript脚本.处理 ...

  9. jmeter 基础介绍

    Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域.它可以用于对静态的和动态的资源(文件,Se ...

随机推荐

  1. 驰骋工作流引擎与jFinal集成版本2.0

    驰骋工作流引擎与jFinal集成版本2.0 发布说明 关键字: 驰骋工作流程快速开发平台 工作流程管理系统java工作流引擎. 使用协议:GPL. 关于JFinal: https://www.jfin ...

  2. java 路径问题

    java路径存在两种写法"/"和"\\" String path="D:\\1.txt"; String path1="D:/1. ...

  3. FZU 2235

    中文题,题意略. 这个题点少坐标范围大,直接离散化后建图搞. 这个题目卡vector,真是一脸懵逼............ #include<stdio.h> #include<st ...

  4. 标准pcm数据(正弦波、方波、三角波)解读

    一年前写了一个demo,用于生成几种标准的波形,如正弦波.方波.三角波.之前写的只有这几个功能:波形/通道/时长/频率的控制选择,这几天抽了些时间又加了增益控制功能.为了避免东西丢失或意外删除,特上传 ...

  5. Oracle - SQL语句实现数据库快速检索

    SQL语句实现数据库快速检索 有时候在数据库Debug过程中,需要快速查找某个关键字. 1:使用PLSQL Dev自带的查找数据库对象,进行对象查找 缺点:查找慢.耗时. 2:使用SQL语句对数据库对 ...

  6. ROS中local costmap的原点坐标系

    local costmap是一个依赖于其他坐标系存在的坐标系统,它并不维护自己的坐标系,而是在另一个坐标系中设定坐标原点,然后记下自己的宽与高.它使用数据结构nav_msgs/OccupancyGri ...

  7. Codeforces 374 C Inna and Dima (DFS)

    Inna and Dima 题意:从图上的任意一个D点按着DIMADIMA的顺序走,问一共可以经过多少个DIMA,如果经过0个DIMA就输出“Pool DIma!“,如果可以有无数多个DIMA就输出” ...

  8. HDU 4565 So Easy! 广义斐波拉数 数论 (a+sqrt(b))^n%mod 模板

    So Easy! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  9. javascript删除数组元素的7个方法

    在JavaScript中,除了Object之外,Array类型(数组)恐怕就是最常用的类型了.与其他语言的数组相比,JavaScript中的Array非常灵活.这种灵活性有利有弊,好处是其富有创造性, ...

  10. grep : app :Is a directory

    今天在查日志的时候用grep命令,遇到这样的一个问题,grep : app :Is a directory 用的grep命令是这样的:grep -10 '2019-08-14 21:22:39.252 ...