1. 官网下载Jmeter: 点这里, 下载完成解压即可

2. 启动: 进入解压后的bin目录, Windows点击jmeter.bat, Linux执行jmeter

3. 添加线程组(user) : Test Plan --> Add --> Threads(Users) --> Thread Group, 这里还有setUp Thread Group和tearDown Thread Group, 前者是测试之前做的事, 后者是测试之后做的事. 这里点击Test Plan有个执行计划的设置比较常用, Run Thread Groups consecutively(i.e.one at time), 勾选表示顺序执行, 指的是测试计划中存在多个线程组时,第一个线程组执行完后再执行下一个线程组。下图是线程组的线程配置详情:

4. 这里介绍常用的几个, 有些不常用的需要用的时候, 自己去试一下或者找下资料看下文档说明.

  Sampler: 常用的HTTP Request/FTP Request/JDBC Request/Java Request, 这个是核心元件, 具体测试的对象在这里写, 基本用到的HTTP Request, post/get的HTTP请求, 这里懂HTTP协议的一看就会了, 需要注意的是编码(有时候会乱码), Redirect Automatically和Follow Redirect的区别, 前者只针对get/head请求, 不会记录中间过程, 后者用于会记录中间过程.

  Logic Controller: 业务逻辑控制器, 懂编程的一看就能明白这是干啥的, 主要常用的有if/Random等等, random也可以使用Options-->Function Helper Dialog里面的函数,例如: ${__Random(1,100,num)}

  Pre Processors: 前置处理器, 在sampler元件之前执行, 一般用的最多的就是参数设置(User Parameters), 这里在参数化的时候在细说

  Post Processors: 后置处理器, 在sampler元件之后执行, 用的多的也就是Regular Expression Extractor/XPath Extractor, 这里在关联的时候再细说

  Assertion: 断言, 常用的Response Assertion(有很多种比较方式, 根据实际情况择优选择)

  Timer: 定时器, 一般用的多的是Synchronizing Timer, 集合点的时候用到

  Config Element: 配置元素, 这里面各个组件功能不一, 比如HTTP Request Defaults, 公共的请求参数都在这里事先配置, 后面在具体的sampler里面, 相同的部分就可以省略不写了

  Listener: 监听器, 常用的查看结果树(View Results Tree), Summary Report(我看和聚合报告的区别好像就是会有个响应时间的标准方差), 聚合报告(Aggregate Report)

5. 最后说明下性能监控的各项指标

  Label: 取样器, 自定义命名的线程组

  #Samples: 请求数, 样本数

  Average: 平均响应时间, 单位ms

  Min: 最小响应时间, 单位ms

  Max: 最大响应时间, 单位ms

  Median: 50%的请求的响应时间

  90%Line: 90%的请求的响应时间, 性能测试很重要的指标

  95%Line: 95%的请求的响应时间

  99%Line: 99%的请求的响应时间

  Error%: 事务错误率, 一般不高于1%

  Throughput: 每秒完成的事务数, 也叫TPS, 也是性能测试很重要的指标, 越大越好, 越大说明系统的处理能力越强

  Received KB/sec: 每秒从服务器端接收到的数据量

  Sent KB/sec: 每秒向服务器发送的数据量

  Avg. Bytes: 平均数据流量,单位是Byte

  Std.Dev: 响应时间的标准方差

Jmeter性能测试之基础知识(一)的更多相关文章

  1. JMeter性能测试的基础知识和个人理解

    JMeter性能测试的基础知识和个人理解 1. JMeter的简介   JMeter是Apache组织开发的开源项目,设计之初是用于做性能测试的,同时它在实现对各种接口的调用方面做的比较成熟,因此,常 ...

  2. Jmeter性能测试之如何写Java请求测试用例类

    一. 引言: 最近工作中的一个项目要求做性能测试,该项目由提供服务的几个应用组成,选用的框架是阿里巴巴公司开源的服务框架Dubbo.关于Dubbo的介绍,网上也有很多资料,本人只是做了粗略的了解,没有 ...

  3. Jmeter博文索引~基础知识和实践操作汇总

    所有Jmeter笔记的目录/索引 一,基础操作和常用操作 Jmeter入门(一)理论基础 Jmeter安装及配置(含JDK安装) Jmeter之设置线程组运行次数/时间 Jmeter之参数化(4种设置 ...

  4. Jmeter性能测试之分布式(五)

    Jmeter是纯Java开发的开源性能测试工具, Java程序是很吃内存的, 有时候一台负载机给服务器的压力是不够的, 需要很多台同时负载, 这个时候就需要用到分布式了. 1. 组网图大概就是这样的 ...

  5. Jmeter性能测试之进阶Java request的使用

    在IDE中引用Jmeter的安装目录lib/ext中两个文件ApacheJMeter_core.jar和ApacheJMeter_java.jar Java request的类需要继承Abstract ...

  6. Jmeter性能测试之Monitor监控(SSHMon Samples Collector)

    前面写的一篇Monitor监控有缺陷, 这篇文章使用Jmeter4.0+的版本, 使用插件SSHMon Samples Collector来做资源监控 1. 官网下载插件: plugins-manag ...

  7. Jmeter性能测试之Monitor监控(四)

    使用Jmeter(该篇文章使用的版本最高为3.1, 3.1+的版本存在兼容性问题)做性能测试, 要监控服务器硬件资源消耗情况, 可以使用扩展插件完成. 1. 服务端插件下载agent, 点击这里 , ...

  8. Jmeter性能测试之参数化(二)

    Jmeter参数化主要有3种方式: 1. Add--> Pre Processors--> User Parameters 2. Add--> Config Element--> ...

  9. Jmeter性能测试之添加思考时间

    利用定时器添加用户思考时间 JMeter如何插入思考时间,在一个真实的性能测试场景中,是需要加入思考时间,来模拟真实用户行为.本文就来介绍,如何在三个请求之间添加思考时间. 1. 在Test Plan ...

随机推荐

  1. Git里有些费解的术语和设计

    关于暂存区, 好几个地方都写到了 正在编辑的文件 --> Unchacked/Modified, 而Unchacked/Modified, 的状态也可以叫 to be committed . 这 ...

  2. Servlet的 GenericServlet 和 HttpServlet

    一.GenericServlet? servlet 是一个接口 下面有两个抽象类 GenericServlet 和 HttpServlet 需要被 继承并重写其中的方法. package javawe ...

  3. Lodop打印表格带页头页尾 高度是否包含页头页尾

    通过设置TableHeightScope,可以实现对ADD_PRINT_TABLE,表格带页头页尾,查看本博客另一篇博文:Lodop打印表格带页头页尾 自动分页每页显示头尾 超文本超过打印项高度,会自 ...

  4. nginx(二)nginx的安装

    下载 nginx官网下载地址 把源码解压缩之后,在终端里运行如下命令: ./configure make make install 默认情况下,Nginx 会被安装在 /usr/local/nginx ...

  5. codeforces660C

    Hard Process CodeForces - 660C You are given an array a with n elements. Each element of a is either ...

  6. Vuex、axios、跨域请求处理和import/export的注意问题

    一.Vuex 1.介绍 vuex是一个专门为Vue.js设计的集中式状态管理架构. 对于状态,我们把它理解为在data中需要共享给其他组件使用的部分数据. Vuex和单纯的全局对象有以下不同: 1. ...

  7. ovs-qos配置

    QoS配置 在许多网络场景中,都需要根据需求对网络流量部署服务质量(QoS)保障策略,比如限制指定主机的最大接入带宽等需求.本节将介绍如何在OVS上添加队列,并完成数据的入队操作,从而完成QoS策略部 ...

  8. python中assert()函数的使用

    关于assert()函数的使用,主要参考博客https://blog.csdn.net/qq_37119902/article/details/79637578 assert函数主要是用来声明某个函数 ...

  9. linux basic ------ dd 和 cp 的区别

    问:看了一些关于dd和cp的命令,但是我始终无法明白dd和cp之间有什么不同?不是都可以看成是备份的作用么?还有什么区别呢?答:1.dd是对块进行操作的,cp是对文件操作的. 2.比如有两块硬盘,要将 ...

  10. 剑指Offer_编程题_21

    题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. class Solution { public: void push(int value) { st.push(val ...