熟悉几个专有名词:
1、测试计划是顺序执行的,一个性能测试必须有的三部分:测试计划、线程组、sampler(采样器)--核心
2、控制器(用来定义请求执行的):loop if else
3、timer:请求与请求之间的延时。
4、断言:可以直接加载采样器之后,用于判断采样器的输出结果是否符合预期。
5、监听器:统计结果,输出测试报告用--聚合报告
===========================================================
jmeter目录结构说明:
 
测试计划--用来组织整个测试的树形结构,至少需要包含一个线程组,线程组中至少要有一个请求。
测试报告会以线程组的名字为测试报告标题
Ramp-Up Period(in seconds):表示在设定的时间内启动完所有线程,是间隔启动。
setup是在所有线程组执行之前执行,teardown是在所有线程组执行之后执行。
默认端口8080,可以重载。
http常用的三个配置器:http request manager,HeardManager:不同的http对应的heard不一样,用来增加heard多样性,http cookie manager 也是一样的。
jmeter默认会有一个断言:response code != 200的时候,默认请求失败。
 
Assertion 断言--断言里是可以写程序的。
模式匹配规则:substring、 including equal等
duration(持续时间)--登录时间超过了预设时间等问题。
result tree:打印所有的请求,及响应指标统计
============================================================
重要工具 fiddler web debug
用来查看页面参数等等,将请求图片的,请求静态资源的都过滤掉,jmeter重点测试真正与后台交互的代码部分。略过前端的部分。
fiddler可以选择过滤掉某些ip或key。
套路:fiddler抓页面,jmeter制脚本
随机生成的变量怎么获取 给下一个接口做参数?
sampler--可编程的采样器
============================================================
引用变量: ${变量名}
在三个地方可以定义变量:配置器、脚本、函数 vars_put('变量名','变量值')
变量作用域:任何一个变量都有作用域,配置器根目录定义变量的作用域是全局的,函数、脚本定义的变量是在线程组里面,组外影响不到。避免了变量在多个线程组之间绕串。
 
函数:可以查看函数助手
用法:${函数名}允许定义返回变量
随机函数:${__Random}
计数器:${__counter(,)} 创建多个用户等
===========================================================
精华:sampler
支持语言:bean shell(最早)、js(应用范围最广)、groovy(性能最好)
内置变量:
vars
log
samplerresult
 
counter加用户可以保证不重复
============================================================
六、JMeter常用测试元件
 
1.线程组
 
用来管理执行性能测试所需的JMeter线程。
 
a.可以设置线程数量
 
b.设置线程启动周期
 
c.设置执行测试脚本的循环次数
 
2.控制器
 
JMeter有两种类型的控制器:采样器和逻辑控制器。
 
采样器被用来向服务器发送请求。JMeter采样器包含:FTP Request、HTTP Request、JDBC Request等。
 
逻辑控制器用来控制JMeter的测试逻辑,特别是何时发送请求。
 
3.监听器
 
监听器提供了对JMeter在测试期间收集到的信息的访问方法。
 
4.定时器
 
JMeter线程在发送请求之间没有间歇,通过添加定时器,设定请求之间应该间隔的时间。
 
5.断言
 
可以使用断言来检查从服务器获得的响应内容。
 
6.配置元件
 
配置元件与采样器紧密关联。虽然配置元件并不发送请求,但可添加或修改请求。
 
7.前置处理器
 
会在采样器发出请求之前做一些操作。
 
8.后置处理器
 
会在采样器发出请求之后做一些操作。
 
JMeter执行顺序:配置元件=》前置处理器=》定时器=》采样器=》后置处理器=》断言=》监听器
 
--------------------------------------------------------------------------------------------------------
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

【Fine学习笔记】Jmeter笔记的更多相关文章

  1. hadoop2.5.2学习及实践笔记(二)—— 编译源代码及导入源码至eclipse

    生产环境中hadoop一般会选择64位版本,官方下载的hadoop安装包中的native库是32位的,因此运行64位版本时,需要自己编译64位的native库,并替换掉自带native库. 源码包下的 ...

  2. Python学习的个人笔记(基础语法)

    Python学习的个人笔记 题外话: 我是一个大二的计算机系的学生,这份python学习个人笔记是趁寒假这一周在慕课网,w3cschool,还有借鉴了一些博客,资料整理出来的,用于自己方便的时候查阅, ...

  3. 开始记录学习java的笔记

    今天开始记录学习java的笔记,加油

  4. 菜鸟教程之学习Shell script笔记(上)

    菜鸟教程之学习Shell script笔记 以下内容是,学习菜鸟shell教程整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-shell.ht ...

  5. hadoop2.5.2学习及实践笔记(四)—— namenode启动过程源码概览

    对namenode启动时的相关操作及相关类有一个大体了解,后续深入研究时,再对本文进行补充 >实现类 HDFS启动脚本为$HADOOP_HOME/sbin/start-dfs.sh,查看star ...

  6. 深度学习Keras框架笔记之AutoEncoder类

    深度学习Keras框架笔记之AutoEncoder类使用笔记 keras.layers.core.AutoEncoder(encoder, decoder,output_reconstruction= ...

  7. 深度学习Keras框架笔记之TimeDistributedDense类

    深度学习Keras框架笔记之TimeDistributedDense类使用方法笔记 例: keras.layers.core.TimeDistributedDense(output_dim,init= ...

  8. 深度学习Keras框架笔记之Dense类(标准的一维全连接层)

    深度学习Keras框架笔记之Dense类(标准的一维全连接层) 例: keras.layers.core.Dense(output_dim,init='glorot_uniform', activat ...

  9. Elasticsearch7.X 入门学习第九课笔记-----聚合分析Aggregation

    原文:Elasticsearch7.X 入门学习第九课笔记-----聚合分析Aggregation 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. ...

  10. Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD

    原文:Elasticsearch7.X 入门学习第二课笔记----基本api操作和CRUD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链 ...

随机推荐

  1. 【转载】Windows环境下JNI的实现实例

    转自:http://blog.csdn.net/jjunjoe/article/details/6987183 一.关于JNI: JNI(Java Native Interface):Java本地调用 ...

  2. drf解析模块,异常模块,响应模块,序列化模块

    复习 """ 1.接口:url+请求参数+响应参数 Postman发送接口请求的工具 method: GET url: https://api.map.baidu.com ...

  3. 概率 lightoj 1027

    题意 : 在n个门前选择一扇门出去, 然后如果第i扇门的 Xi值是正的话,你会花费Xi时间后出去 , 如果Xi是负数的话你会花费-Xi时间后回到老地方,并且忘记了刚才的选择, 选择一扇门的概率是等概的 ...

  4. nginx的负载均衡配置

    1.下载nginx的压缩包,可以去官网下载 2.解压缩,可以看到其中有个conf的文件夹,在该目录中,nginx.conf配置文件就是核心配置文件 3.默认配置 #user nobody; worke ...

  5. [lua]紫猫lua教程-命令宝典-L1-01-04. 字符串数据

    L1[字符串]01. 单引号与双引号 没什么说得 字符串:以双引号包含 或者单引号包含 或者[[]]包含 L1[字符串]02. 长文本内容 小知识:如果用[[]]包含字符串内容 但是字符串内容里面 包 ...

  6. touch命令修改时间

    实例[rhel7]: [root@localhost test]# stat 1.txt 文件:"1.txt" 大小:0 块:0 IO 块:4096 普通空文件设备:fd00h/6 ...

  7. 【C语言】一元二次方程(求实根和虚根)

    求一元二次方程:ax2+bx+c=0 的根. 输入三个实数a,b,c的值,且a不等于0. #include<stdio.h> #include<math.h> int main ...

  8. [Fiddler学习] - Mock的简单实现原理及方法

    最近在研究Fidder抓包并做一点测试工作,下面介绍一下Fiddler的实现原理: 简单来说从clent,server端发出来的请求,都需要通过Fiddler进行代理走一遍.如果有任何请求需要做修改, ...

  9. Arctic Network(洛谷)--北极通讯网络(loj)

    洛谷传送门 loj传送门 一道蛮基础的最小生成树的题 题意也没绕什么圈子 只是叙述的有点累赘而已(loj上是这样的 也就读入加建边需要稍稍稍多想一下下 对于我这么一个蒟蒻 这是一道很好的板子题 (洛谷 ...

  10. Python--比较两个字典部分value是否相等(可以用于接口自动化)

    eg:例如你调用了一个新增的接口,以往功能测试的话,你再web端新增一个店铺之后,你肯定要去数据库中查看,这些数据插入的对不对,是否正确的插入了每个字段 # 比较两个字典部分是否相等 def comp ...