Jmeter性能测试之基础知识
Posted andrew209
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter性能测试之基础知识相关的知识,希望对你有一定的参考价值。
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性能测试之基础知识的主要内容,如果未能解决你的问题,请参考以下文章