基本构成

1)负载发生器:产生负载,多线程模拟用户行为

2)用户运行期:脚本运行引擎,用户运行器附加在线程上,根据指定脚本模拟指定的用户行为

3)资源发生器:生成测试过程中服务器、负载机的资源数据

4)报告生成器:根据测试中获得的数据生成报表,提供可视化的数据显示方式

主要概念

1)测试计划(Test Plan)

测试计划是根节点,包含本次测试所有相关功能

2)线程组(Threds(Ures))

用来模拟用户负载的组件,主要用来设置运行的线程数(就是模拟多少用户,一线程=一用户)

3)取样器(Sampler)

取样器必须添加在线程组下面。

用来模拟用户操作,向服务器(被测试系统)发出Http请求或java请求等等。接口测试就是用HTTP请求来实现的。

4)逻辑控制器(Logic Controller)

控制取样器的执行次数或执行顺序等

5)前置处理器(Pre Processors)

一般放在取样器之前。在取样器执行发出请求之前,做的一些环境或参数的准备工作。

比如有一个JDBC请求的取样器,要对数据库进行一些操作。需要在前置处理器中,先进行数据库的连接

6)后置处理器(Post Processors)

一般放在取样器之后。用来处理服务器返回的结果。比如接口测试中,上一个请求返回的参数,会当做下一个请求的参数。这时就需要用后置处理器去获取这个值。

7)断言(Assertions)

检查测试得到的响应和预期结果是否一致。判断测试是否通过

8)定时器(Time)

设置取样器的执行时间,可以让请求在一个时间点同时发出等场景

9)测试片段(test fragment)

和线程组同样级别的组件,可以在该组件下放任何测试元件。但一般不会被运行。

测试片段下的元件可以被模块控制器调用。利用它来模块化请求(类似封装)

10)配置元件(Config Element)

通过这个组件可以实现参数化。比如从csv文件中读取数据。为取样器提供数据支持。

11)监听器(Listener)

用来收集测试结果,对测试结果进行处理和可视化的组件

一个测试脚本中必定会有测试计划(打开jmeter默认就会有的),至少一个线程组、取样器、监听器

JMeter负载是通过线程组来驱动的。所以计划中至少要有一个线程组

测试的目的是为了模拟用户的请求,没有取样器脚本没有任何意义

需要使用监听器来知道请求结果。从结果中对问题进行分析。

JMeter学习笔记02-基础介绍的更多相关文章

  1. JMeter学习笔记--工具简单介绍

    一.JMeter 介绍 Apache JMeter是纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件,Java ...

  2. python学习笔记02 --------------基础数据类型

    python的基本数据类型: 1.基本数据 1.1. 数字类型 1.1.1 整数 int int()           #将括号内内容转化为整数类型. 1.1.2 浮点数 float 1.1.3 复 ...

  3. Python学习笔记之基础篇(-)python介绍与安装

    Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...

  4. HTML+CSS学习笔记(1) - Html介绍

    HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...

  5. MyBatis:学习笔记(1)——基础知识

    MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...

  6. OpenCV 学习笔记 02 使用opencv处理图像

    1 不同色彩空间的转换 opencv 中有数百种关于不同色彩空间的转换方法,但常用的有三种色彩空间:灰度.BRG.HSV(Hue-Saturation-Value) 灰度 - 灰度色彩空间是通过去除彩 ...

  7. ELK-6.5.3学习笔记–elk基础环境安装

    本文预计阅读时间 13 分钟 文章目录[隐藏] 1,准备工作. 2,安装elasticsearch. 3,安装logstash. 4,安装kibana 以往都是纸上谈兵,毕竟事情也都由部门其他小伙伴承 ...

  8. 软件测试之loadrunner学习笔记-02集合点

    loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...

  9. bootstrap学习笔记之基础导航条 http://www.imooc.com/code/3111

    基础导航条 在Bootstrap框中,导航条和导航从外观上差别不是太多,但在实际使用中导航条要比导航复杂得多.我们先来看导航条中最基础的一个--基础导航条. 使用方法: 在制作一个基础导航条时,主要分 ...

随机推荐

  1. Settings > Editor > Live Templates 中自定义快速输入

    Settings > Editor > Live Templates 中自定义快速输入

  2. Atcoder Dwango Programming Contest V

    模拟,做了ABC三题. D难一些,就不会了. 中规中矩的吧... Atcoder DPCV B 题意:给一个序列,求出所有的子串和中AND值最大的k个数的AND. 思路:既然要求AND,那么肯定按位考 ...

  3. linux安装tomcat部署web项目

    我用的是如下图的两个软件,连接linux服务器. 其中WinSCp是传输文件用的,SecureCRT是用来输入命令的. 1.复制tomcat到指定目录(可复制到你想要的目录下),命令如下: cp /路 ...

  4. (poj 2502) Subway 最短路

    题目链接: 题意:在一个城市里有许多地铁,现在你知道每条地铁的起点  终点与停站点的坐标,知道我们的起始坐标与终点坐标,问加上走路最快到达终点的时间是多少? 方法:求出任意两点的车速时间与步行时间,再 ...

  5. 《构建之法》课程进度之Github、Travis等工具融入篇

    <构建之法>里有一个16周的软件工程课程进度设计.本文在该基本设计的基础上,围绕github.com(源码管理).travis-ci.org(持续集成).单元测试工具.日志工具.少数实用U ...

  6. SQL拼接字符串时单引号转义问题 单引号转义字符

    要拼接一个单引号到已有字符串前后, 开始以为(错误)可以用  \ 转义,如下: '\''+ str+'\'' 看颜色就知道是不行的. 正确方法是两个单引号就转义为单引号,如下: ''''+str+'' ...

  7. vue.js实战——购物车练习(包含全选功能)

    vue.js实战第5章 54页的练习1 直接放代码好了,全选的部分搞了好久,代码好像有点啰嗦,好在实现功能了(*^▽^*) HTML: <!DOCTYPE html> <html l ...

  8. Web App架构

    Web App 架构分为两种:一种是工程架构,一种是项目架构. 工程架构则主要有以下几个方面的内容: 1, 解放生产力,我们希望在开发项目的过程中把全部目光都放到书写业务代码上,不需要去考虑一些重复性 ...

  9. 用pip下载的python模块怎么在PyCharm中引入报错

    在IDE中导入下载的模块,比如:numpy模块 你会发现虽然你安装了numpy模块,在CMD中python可以import numpy,但是你在PyCharm引不进去,为什么呢?你要是有注意的话,安装 ...

  10. Windows服务器【由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作】问题调查

    今天测试反应了一个问题,说接口返回的速度变慢了,并且返回的数据也不对.然后就找到了我o(╥﹏╥)o. 第一个反应就是查日志,不查不要紧,一查吓一跳,整个服务器上所有的站点都报错了.异常信息如下: Sy ...