Jmeter(六)Jmeter脚本包含要素及书写习惯
Jmeter有丰富的组件,逻辑控制器、配置原件、Sampler、定时器、前置处理器、后置处理器、断言、监听器;而编写脚本一定要养成个人习惯,让人看到Jmeter的脚本目录结构树能够一目了然;因此,首先需要了解的是协议、以及Jmeter的元件执行顺序来作为参考,养成自己的书写习惯。
嗯。。关于协议部分,在协议分类随笔中进行记录,本篇就书写习惯以及一个完整的Jmeter脚本应该包含什么做以记录。
Jmeter组件执行顺序:(摘自《全栈Jmeter》)
1、配置原件(如果存在)
2、前置处理器(如果存在)
3、定时器(如果存在)
4、取样器(如果存在)
5、后置处理器(如果存在且取样器的结果不为空)
6、断言(如果存在且取样器的结果不为空)
7、监听器(如果存在且取样器的结果不为空)
而一个完整的Jmeter(此处以HTTP协议为例)脚本应该包含哪些组件呢?
众所周知,HTTP协议结构(request)中包含请求头、请求行、请求数据,那么在Jmeter中实现HTTP请求也必然需要进行模拟一个完整的请求才能得到响应。而在编写Jmeter脚本的时候便需要养成良好的习惯,结构树一目了然,不论是工作,还是需要其他人来解决问题,相信都能快速的定位。因此,需要将Jmeter的组件执行顺序以及协议结构相结合,组成一个完整的脚本。

OK,一个简单的访问百度页面的例子就OK了,当然直接访问百度首页不需要任何参数,因此下方请求数据不需要填写;值得一提的是此处的协议和端口号,如果在协议处填写https,那么端口号是可以不填的,因为它会自己默认为443(https的默认端口号);当然,直接填写http,后边的端口号也会默认为80的。
当然,此处例子中在“HTTP信息头管理器”中是什么都没有填写。可以在下方的监听器看得出来:

至于在什么情况下会加入信息头信息,信息头中涉及到哪些信息,见下文;
可以从上图看得出来,一个完整的Jmeter脚本至少要包含一个线程组、一个请求,监听器;线程组可进行设置循环、线程数;Sampler中配置请求地址、协议、参数等;监听器来进行监听请求以及响应内容;

可以切换查看的响应方式,呐、这个就是百度的原始页面了;可以看到的是并没有HTML、CSS等页面渲染元素;
So,这便是一个完整的HTTP请求的Jmeter脚本。
可以看得出来,(除去线程组)是将配置原件放在了第一位,接着是请求,监听器;并没有像录制的脚本一样,将信息头一类的配置元件放入Sampler下一级,调试都不容易,试着找个问题都眼花缭乱。
因此,自行编写时一定要养成良好的习惯,最起码是要有调试方便,层次分明的优点。
Jmeter(六)Jmeter脚本包含要素及书写习惯的更多相关文章
- Jmeter 批量执行脚本之-----------Ant
一.环境介绍&准备: 1)jmeter3.2版本,需配备jdk1.8(或其他jmeter版本): 2)ant下载,并配置环境变量: a.下载地址:http://ant.apache.org/b ...
- jmeter --自动化badboy脚本开发技术
jmeter --自动化badboy脚本开发技术 一般人用badboy都是使用它的录制功能,其它badboy还是一款自动化的工具,它可以实现检查点.参数化.迭代.并发.报告.断点等功能.本文就这些功能 ...
- Jmeter录制pc脚本
1.打开jmeter后可以看到左边窗口有个“测试计划”和“工作台”,右键“测试计划”,添加 Threads(Users) →线程组,再右键 线程组→添加 配置元件→Http请求默认值 Http请求默认 ...
- Jmeter介绍以及脚本制作与调试
目录 Jmeter介绍 Jmeter安装 Jmeter主要测试组件 Jmeter元件作用域与执行顺序 Jmeter运行原理 Jmeter脚本制作 Jmeter脚本调试 Jmeter介绍 Jmeter ...
- Jmeter之录制脚本(二)
上一节已经已经介绍过Jmeter的安装,对于web测试的话,经常会用到一些脚本去执行某些功能,也就是所谓的半自动化测试, 对于不懂代码的童鞋来说,脚本是一个很头疼的概念,badboy的录制是一个对于刚 ...
- JMeter学习-004-WEB脚本入门实战
此文为 JMeter 入门实战实例.我是 JMeter 初学菜鸟一个,因而此文适合 JMeter 初学者参阅.同时,因本人知识有限,若文中存在不足的地方,敬请大神不吝指正,非常感谢! 闲话少述,话归正 ...
- Jmeter之https脚本录制
jmeter录制脚本时,跟http脚本录制主要区别是,https录制需要添加安全证书. 一.jmeter代理服务器及证书配置. 1.打开jmeter,右键测试计划添加线程组,右键工作台--> ...
- JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)
JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...
- 通过ANT实现jmeter批量执行脚本、生成报告、发送邮件全套build.xml文件
在开始通过ANT运行build.xml之前,有一步必须要做,那就是将JMeter所在目录下extras子目录里的ant-JMeter-1.1.1.jar复制到Ant所在目录lib子目录之下,这样Ant ...
随机推荐
- 编译Spring源码
近期,学习Spring源码.会陆续记录这次学习历程. Spring源码下载,环境中需要准备好的东西,git,gradle,eclipse (需要自己安装好) 1.Git clone Spring源码: ...
- Js 分别取一个数的百位,十位,个位
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
- 【java多线程】线程状态分析
一.java线程的状态 NEW: 新建状态,线程对象已经创建,但尚未启动 RUNNABLE:就绪状态,可运行状态,调用了线程的start方法,已经在java虚拟机中执行,等待获取操作系统资源如CPU, ...
- 文件访问控制列表facl
[root@bogon code]# getfacl a.c //获取文件a.c的文件访问控制列表 # file: a.c # owner: root # group: root user::rw- ...
- 使用 --image-repository 解决kubeadm 安装k8s 集群 谷歌镜像墙的问题
从网上我们看到的好多kubeadm 安装k8s 的时候都说需要下拉取镜像,然后修改,实际上 我们可以使用配置参数,快速的跳过墙的问题 说明: 基础镜像,我们仍然存在,拉取的问题,但是dockerhub ...
- mysql之 myloader原理介绍
myloader恢复主要流程 1.首先由myloader主线程完成建库建表,依次将备份目录下建库和建表文件执行应用到目标数据库实例中: 2.接着myloader主线程会生成多个工作线程,由这些 ...
- plsql远程访问数据库 解决ora-12541:TNS:无监听程序
今天在windows server 2012上安装了一个oracle 11g的数据库,但是安装 完成以后发现在我的机器上访问数据库出现错误,ora-12541:TNS:无监听程序. 后来查询了很多资料 ...
- CentOS6.4 添加php-fpm系统服务
简介: php-fpm安装完成后默认不会注册为系统服务,所以需要手工添加系统服务脚本.在/etc/init.d目录下新建php-fpm文件,并更改权限其即可. 1.检测/usr/local/php/v ...
- jsonp跨域设置cookie
html: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...
- ML: 聚类算法R包 - 模型聚类
模型聚类 mclust::Mclust RWeka::Cobweb mclust::Mclust EM算法也称为期望最大化算法,在是使用该算法聚类时,将数据集看作一个有隐形变量的概率模型,并实现模型最 ...