03 - Jmeter用户自定义变量CSV参数化以及断言的设置
设置断言
咱们还是先看一个图吧,由下图可以看出接口是请求成功了,但是请求数量比较少,还是比较方便看的,但是jmeter既然是压测工具,那么肯定不会发这么点儿请求的,如果请求数量比较庞大的话,我们仅仅凭借肉眼是很难看出的;这就需要我们运用的到其他的功能了;断言
增加断言的方式 以及页面介绍
HTTP Request → add → Assertios → Response Assertions
- Apply to 应用范围
Main sample only:仅当前父取样器进行断言,一般一个请求
Sub sample only: 一个请求触发多个,比较少用 - Field to Test 要测试响应的字段
Test Response:响应文本
Response Code:响应代码
Response Message:响应信息
Response Headers: 响应消息头
Request Headers:响应请求头 - Pattern Matching Rules 匹配内容的方式
Contains:包含
Matches:匹配
Equals:相等
Substring:匹配字符串 - Patterns to Test 测试模式
- Custom failure message 自定义失败消息
然后咱们就随便加一个断言试一下
此接口内容包含了请求成功,但是我们想让接口触发断言,故而不能用请求成功来匹配
下面我们就可以看出断言失败了,结果并不是我们需要的,jmeter已经告诉我们了
如果需要设置多个断言的话,可以按照原有的方法再次添加一个响应断言(Response Assertions);这次以状态码为测试,见下图
自定义用户变量
这里关于自定义变量如何使用,为什么用就不解释了,就来说一下局部和(全局)吧
- 局部变量自定义变量创建及介绍
HTTP Request → addt → Config Elementt → User defined Varibles
name:变量名
value:变量值
description:说明 - 全局变量自定义
测试计划右侧
下面咱们就分别设置一个看一下是否能用
以用方式都是一样的,这里就不贴结果了,是肯定可以成功的
CSV参数化操作
在压测服务器时,如果只用一些固定的数据肯定是不可行的,我们需要做的就是,尽可能的模拟生产环境的真实使用场景,所以这里就提到了另外一个组件 CSV set data config(csv 数据文件设置)
添加方式:HTTP Request → addt → Config Elementt → CSV data set config
Configure the CSV Data Source 配置CSV数据源
File Name:文件名
File encodding:文件编码
Varible Names:引用时需要用的变量名
Igore first line:忽略首行 (false)
Delimiter:参数的分隔符
Allow quoted data:是否允许带引号 (false)
Recycle on EOF:遇到文件结束符时再次循环 (true)
Stop thread on EOF:遇到文件结束符停止线程 (false)
Sharing mode:线程共享模式,(全局,当前线程组,当前线程)
txt文件测试
参考下图,文件和CSV配置;咱们模拟了三个账号来登录,so线程组设置为3次
请求体内引用变量,如果不是字符串的话可以直接使用${***}
下面咱们就来看一下结果吧,虽然是正确的但是也要看一下
CSV文件测试 以及多个变量
多个变量定义用逗号隔开切记不要有空格,包括文件内容也是以逗号隔开,引用方式与文本是一致的
修改方式为,创建文本,写入内容,修改文件后缀,上传文件,执行测试,即可
03 - Jmeter用户自定义变量CSV参数化以及断言的设置的更多相关文章
- 『动善时』JMeter基础 — 23、JMeter中使用“用户自定义变量”实现参数化
目录 1.用户自定义变量介绍 2.使用"用户自定义变量"实现参数化 (1)测试计划内包含的元件 (2)数据文件内容 (3)测试计划界面内容 (4)线程组元件内容 (5)CSV数据文 ...
- Jmeter CSV 参数化/检查点/断言
当参数的值没有规律且量不太大时,可以使用CSV Data set config这种方法. 案例: 应用Sogou自动搜索关键字: 软件开发测试,web功能自动化测试,性能自动化测试,Selenium以 ...
- jmeter进行接口测试--csv参数化,数据驱动-转
首先我们要有一个接口测试用例存放的地方,我们这里用EXCEL模板管理,里面包含用例编号.入参.优先级.请求方式.url等等. 1:新建一个txt文件,命名为sjqd,后缀名改为csv,右键excel格 ...
- jmeter(四十六)参数化与断言实战
概述 今天用jmeter做一次参数化实战.通过计数器遍历参数表,然后查询jdbc进行beanshell断言. 涉及元件 用户参数,计数器,正则表达式,jdbc,beanshell脚本 详细过程 在我们 ...
- jmeter参数化数据(_csvread函数、用户自定义变量等)
以下是转载内容,仔细看过后,觉得用得最多的应该是csvread函数.用户自定义变量以及CSV DATA CONFIG控制器这几个,但是做练习之后,在结果树和聚合报告中怎么查看执行结果是个问题,没找到对 ...
- JMeter脚本参数化和断言设置( CSV Data Set Config )
用Badboy录制了Jmeter的脚本,用Jmeter打开后形成了原始的脚本.但是在实际应用中,为了增强脚本的多样性,就要使脚本参数化.这里我以登录为例,参数化用户账号与用户密码. 图1 :原始脚本 ...
- Jmeter接口测试(五)变量及参数化
在请求过程中,有时我们需要在请求中设置一些变量来测试不同的场景. 提示:在调试请求过程中,无关的请求可以暂时禁用掉,选择某个暂时不用的请求,右键--禁用 Jmeter 支持以下类型变量:所有类型的变量 ...
- 参数化1--jmeter参数化数据(_csvread函数、用户自定义变量等)
以下是转载内容,仔细看过后,觉得用得最多的应该是csvread函数.用户自定义变量以及CSV DATA CONFIG控制器这几个,但是做练习之后,在结果树和聚合报告中怎么查看执行结果是个问题,没找到对 ...
- Jmeter (三)变量、参数化、函数
一.参数化 1.在参数中定义变量:${变量名称} 变量定义:2种 2.在用户自定义变量User Defined Variable 或者 用户参数User Parameters中,设置key.value ...
随机推荐
- AspNetCore使用MySQL
既然NetCore开源,那么也使用开源的MySQL的数据库呢?当然NetCore不止单单配MSSQL数据库而已.今天我来讲解NetCore怎么使用MySQL进行开发. 首先新建一个NetCore项目 ...
- 刚新建好的动态网站项目,创建jsp页面就报错??
拿到刚刚可以运行的Eclipse,就马上想敲码了,但一创建项目之后再创建jsp页面就报错= =! 报错的内容大概为缺乏对应的jar包. 我们常用Tomcat为中间体,而他本身是带有开发jsp网站的对应 ...
- 2018-2-13-win10-uwp-读写csv-
title author date CreateTime categories win10 uwp 读写csv lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17 ...
- JavaEE高级-Hibernate学习笔记
*什么是Hibernate? > 一个框架 > 一个Java领域的持久层框架 > 一个ORM框架 *对象的持久化 > 狭义的理解:“持久化”仅仅指把对象永久保存到数据库中 &g ...
- Tenka1 Programmer Contest D - Crossing
链接 Tenka1 Programmer Contest D - Crossing 给定\(n\),要求构造\(k\)个集合\({S_k}\),使得\(1\)到\(n\)中每个元素均在集合中出现两次, ...
- 06.队列、python标准库中的双端队列、迷宫问题
class QueueUnderflow(ValueError): """队列为空""" pass class SQueue: def __ ...
- pandas.Series函数用法
class pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False) e.g., ...
- DGA域名检测
一.DGA域名原理 僵尸网络(Botnet):互联网上在蠕虫.木马.后门工具等,传统恶意代码形态的基础上发展.融合而产生的一种新型攻击方法. DNS(Domain Name System) :基于 U ...
- Graph Convolutional Network
How to do Deep Learning on Graphs with Graph Convolutional Networks https://towardsdatascience.com/h ...
- HTTP通信安全和Web攻击技术
一.HTTPS,确保Web安全 在HTTP协议中可能存在信息窃听或身份伪装等安全问题,HTTP的不足: 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明报文 ...