性能测试工具JMeter 基础(三)—— 创建测试计划
如何创建一个完整的测试计划?
安装好JMeter后,通过根目录下的bin目录中的jmeter.bat启动JMeter

添加线程组(Thread Group)
在 Test Plan 鼠标右键 Add—Threads(Users)-Thread Group 添加成功,如下图:

添加缓存(HTTP Cache Manager)
在Thread Group鼠标右键Add-Config Element-HTTP Cache Manager 添加成功,如下图

添加Cookie(HTTP Cookie Manager)
在Thread Group鼠标右键Add-Config Element-HTTP Cookie Manager 添加成功,如下图

以访问JMeter官网为例,在Test Plan中设置默认参数:jmeter.apache.org

添加HTTP请求(HTTP Request)
在Thread Group鼠标右键Add-Sampler-HTTP Request 添加成功,如下图:

在第3步时我们在Test Plan中设置了参数,在这里我们可以直接引用,在JMeter中引用参数为:${引用名称},因此请求参数配置如下:

添加查看结果树(View Results Tree)
在Thread Group鼠标右键Add-Listener-View Results Tree 添加成功,如下图:

一般情况下,我们创建测试计划都不止一个请求,这是我们可以复制HTTP请求修改成我们想要的请求数据,如下图:

在实际用户操作时,请求间一般时存在停顿的,我们可以通过定时器来解决停顿问题
在请求接口添加定时器(Constant Timer),HTTP请求鼠标右键Add-Timer-Constant Timer 添加成功,如下图:

添加断言(Response Assertion)
HTTP请求鼠标右键Add-Assertion-Response Assertion 添加成功,配置好断言的参数,如下图:

在断言过程中断言失败会呈现红色并告知失败原因,反之则是绿色,如图:

以上便是一个完整的测试计划
注意:
对于请求同一个服务器的请求,我们可以通过添加请求默认值(HTTP Request Defaults)简化脚本
在Thread Group鼠标右键Add-Config Element-HTTP Request Defaults 添加成功并配置好请求服务IP,如下图

对于请求默认值:若HTTP请求中没有设置IP,则取当前线程组中请求默认值中的参数;若HTTP请求中已经设置IP,则取当前请求设置的IP。总的来说:当前请求(HTTP Request)的IP优先于请求默认值(HTTP Request Defaults)的IP在进行性能测试时,为更好的模拟真实用户,我们可以通过勾选HTTP请求中Advanced的值进行优化脚本,勾选嵌入资源,如下图:

运行脚本后可看到所有的嵌入资源,同真实用户访问浏览器一样有时候我们需要用户在一定时间内逐渐进入,我们可以在Test Plan中请求数,以及启动时间,如下图:

在有些请求还需要添加请求头(HTTP Header Manager)
在Thread Group鼠标右键Add-Config Element-HTTP Header Manager 添加成功,如下图:

以上都是对创建一个完整的测试计划的详解,后期会对每个逐个讲解
性能测试工具JMeter 基础(三)—— 创建测试计划的更多相关文章
- 性能测试工具JMeter 基础(六)—— 测试元件: 线程组
线程组的定义: 线程组是测试计划执行的入口,所有的逻辑控制器和取样器都必须在线程组下,其他的元件根据位置的不同作用域是不同的. 线程组是每个线程都是独立运行测试脚本,一个线程组就等于一个用户,通过多个 ...
- 性能测试工具JMeter 基础(五)—— 测试元件: 测试计划
测试计划的定义: 测试计划是测试脚本的容器,定义了要执行什么.怎么执行对测试做总体的设置,且都是从线程组开始执行 在测试计划中可自定义用户变量(User Defined Variables),可通过A ...
- 性能测试工具JMeter 基础(二)—— 主界面介绍
主界面介绍 JMeter的主界面主要分为菜单导航栏.工具栏.计划树标签栏.内容栏 菜单导航栏:全部的功能的都包含在菜单栏中 工具栏:相当于菜单栏常用功能的快捷按钮 计划树标签栏:显示测试用例(计划)相 ...
- 性能测试工具JMeter 基础(四)—— 录制脚本
对于JMeter中HTTP请求除了手动添加以为还可以进行脚本录制,有两个方法: 使用badboy录制,录制完成后,将录制的文件导入JMeter中 使用JMeter自带的录制原件进行录制(HTTP(S) ...
- 性能测试工具JMeter 基础(九)—— 测试元件: 逻辑控制器之交替控制器
交替控制器:根据被控制器触发执行次数,去依次执行控制器下的子节点(逻辑控制器.采样器),可以由线程组的线程数.循环次数.逻辑控制器触发. 交替控制器(lnterleave Controller) 简单 ...
- 性能测试工具JMeter 基础(一)—— 安装、配置环境变量
JMeter下载 下载地址:https://jmeter.apache.org/download_jmeter.cgi 下载完成后解压后可直接使用,不用进行安装 环境变量配置 新增变量名:JMETER ...
- 性能测试工具JMeter 基础(八)—— 测试元件: 逻辑控制器之事物控制器
事物控制器是将控制器下的所有取样器作为一个事物统计.分析 事物控制器(Transaction Controller) 事务控制器一共有两个选项: Generate parent sample:默认不勾 ...
- 性能测试工具JMeter 基础(七)—— 测试元件: 逻辑控制器之if逻辑控制器
逻辑控制器线程组指定了其取样器执行的逻辑条件.顺序,并且执行顺序是按照位置顺序从上至下执行的 if逻辑控制器(If Controller) 在逻辑控制器中可设置条件,当条件满足的时候才会被执行 一共有 ...
- 1 认识开源性能测试工具jmeter
典型的性能测试工具主要有2个,Load Runner和jmeter.Load Runner是商业化的,Jmeter是开源的.下面我们认识一下开源性能测试工具jmeter. 1.jmeter是什么? A ...
随机推荐
- 使用hsdis-amd64.dll打印java的汇编文件
文件放在D:\DeveSOFTWARE\jdk1.8.0_45\jre\bin目录下 hsdis-amd64.dll 下载路径:https://github.com/atzhangsan/file_l ...
- JMX远程连接JVM
-Dcom.sun.management.jmxremote :允许使用JMX远程管理 -Dcom.sun.management.jmxremote.port=9999 :JMX远程连接端口 -Dco ...
- layui 页面加载完成后ajax重新为 html 赋值 遇到的坑
页面加载完毕后,通过 ajax 按照返回值,为部分 html 赋值: $(function(){ ..... }) 直接这样写,报错,$ 没有定义什么的,错位原因为 jquery 引入错误. layu ...
- 使用C#winform编写渗透测试工具--敏感目录扫描
使用C#winform编写渗透测试工具--敏感目录扫描 由于之前在做渗透测试的时候,发现使用的工具较多,切换起来较麻烦,便萌生了开发一个包含各种渗透测试工具的小程序,包括敏感目录扫描.端口查询.子域名 ...
- python算法练习(1)抓交通肇事犯
抓交通肇事犯 1.问题描述 一辆卡车违反交通规则,撞人后逃跑.现场有三人目击该事件,但都没有记住车号,只记下了车号的一些特征.甲说:牌照的前两位数字是相同的:乙说:牌照的后两位数字是相同的,但与前两位 ...
- oracle(enquences & latches )lock (oracle 锁大全)
资料来自官方文档: https://docs.oracle.com/database/121/CNCPT/consist.htm#CNCPT1333 https://docs.oracle.com/d ...
- Solidity
起因是Xenc师傅给我截了张图,我日 居然看不懂 ,一搜才知道,之前学的版本有些老了.. 这次学下新一点的记录下 HelloWorld pragma solidity ^0.6.0; // versi ...
- 腾讯技术团队整理,为什么 Flutter 能最好地改变移动开发
导语 | Flutter 框架是当下非常热门的跨端解决方案,能够帮助开发者通过一套代码库高效构建多平台精美应用,支持移动.Web.桌面等多端开发.但仍然有很多产品.设计.甚至开发同学并不了解 Flut ...
- 高楼扔鸡蛋问题(鹰蛋问题) POJ-3783
这是一道经典的DP模板题. https://vjudge.net/problem/POJ-3783#author=Herlo 一开始也是不知道咋写,尝试找了很多博客,感觉有点领悟之后写下自己的理解. ...
- 2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案
2021字节跳动校招秋招算法面试真题解题报告--leetcode19 删除链表的倒数第 n 个结点,内含7种语言答案 1.题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. ...