Jmeter 参数化请求实例
Jmeter 参数化请求实例
在jmeter中的请求可以参数化,其中参数化的方式有4种:
1.CSV Data Set Config
2.数据库
3.用户自定义变量
4.用jmeter中的函数获取参数值
第一种方式:CSV Data Set Config
1.创建一个data.txt文件,内容如下:
101010100,北京
101010200,海淀
101010300,朝阳
请求天气的URL为:GET http://www.weather.com.cn/weather/101010100.shtml
2.创建
2.1 线程组
- 2.2 添加CSV Data Set Config
2.3 HTTP请求
服务器名称或IP:www.weather.com.cn
协议为: http 方法为:GET
路径为: /weather/${citycode}.shtml 其中${citycode}是引用CSV Data中citycode
- 2.4 添加断言 ——断言内容为 ${city} ,是引用CSV Data中city
- 2.5 添加监控——添加查看结果树和聚合报告
- 2.6 运行并查看结果
第二种方式:数据库
- 请参阅Jmeter测试MySQL数据库实例 ,
- 4.正则表达式提取器
- 注释:随便
- Apply to: 默认即可
- 要检查的字段:主体等选择,一般选择主体,即服务器返回给jmeter的页面主体信息
- 引用名称:定义的参数名称,在后面步骤时可引用
- 正则表达式: 正则表达式中()括起来的部分就是要提取的。
- 模板:$1$代表只有一组数据,$1$$2$代表有两组数据
- 匹配数字:0代表随机取值,1代表全部取值,通常情况下填0
- 缺省值:如果参数没有取得到值,那默认给一个值让它取
1)__Random( , , ),获取值的方式:${__Random( param1,param2 ,param3 )},param1为随机数的下限,param2为随机数的上限,param3为存储随机数的变量名,是选填项。所以,也还可以这样调用此函数:_Random(param1,param2,param3),然后再取param3的值。
2)__threadNum,获取值的方式:${__threadNum},这个函数没有任何参数,它用于得到当前运行的线程编号。
3)__CSVRead( , ),获取值的方式:${__CSVRead(param1,param2)},param1是文件名,param2是文件中的列(列数从0开始)。具体操作见csv数据提取部分的说明。
4)__StringFromFile( , , , ),获取值的方式:${__StringFromFile(param1,param2,param3)},param1是文件名,param2、param3为选填项:param2—存储结果的变量,param3—文件开始列,网上找到一点此函数的用法,来自:
1.函数:${_StringFromFile(文件名.dat)}
2.外部文件的格式必须为.dat
3.默认读取位置为/bin下,也可以自己设定文件存放路径,如:${_StringFromFile(e:user.dat)},从e盘下读取user.dat文件中的数据
4.每次读取文件中的一行
5.如果我有多个user文件,想一起读取,文件名分别为user1 user2。函数写为:${_StringFromFile(user#.dat,,1,2)},从默认目录下读取user1和user2的文件
6.如果一个文件想读取多次,可以写成:${_StringFromFile(user.dat,,,2)},user1文件读取2次
]
Jmeter 参数化请求实例的更多相关文章
- JMeter学习-026-JMeter 分布式(远程)参数化测试实例
以前文所述对文章详情的HTTP请求进行性能测试为例.日常实际场景中,不可能所有的人都在同时访问一篇文章,而是多人访问不同的文章,因而需要对文章编号进行参数化,以更好的模拟日常的性能测试场景.同时,因文 ...
- 性能测试——jmeter环境搭建,录制脚本,jmeter参数化CSV
一.Jmeter+jdk环境搭建 1.http://www.oracle.com/technetwork/java/javase/downloads/index.html,下载jdk. 直接安装就行了 ...
- jmeter JDBC请求连接测试mysql数据库
所有jmeter基本组件功能本文不做介绍.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连 ...
- Jmeter参数化的方法
测试接口时,使用Jmeter在请求中输入参数,若是有多种情况,有多条测试参数,是不是要每个情况逐条输入呢?逐条输入会让人觉得比较麻烦,因此,就有了Jmeter参数化. Jmeter参数化的方法: 用户 ...
- jmeter --JDBC请求
转jmeter --JDBC请求 做JDBC请求,首先要了解这个JDBC对象是什么,然后寻找响应的数据库连接URL和数据库驱动. 数据库URL:jdbc:sqlserver://200.99.197. ...
- jmeter参数化读取数据进行多次运行
jmeter参数化数据,可以使用csv,还可以使用数据库的方式 1.使用csv读取数据 在线程组中,配置原件中,选择csv data set config 1.本地创建了16个数据,存为test.tx ...
- Jmeter 参数化之 CSV Data Set Config 循环读取参数
对于做接口和性能测试,个人感觉Jmeter是一个非常方便易学的工具,今天随笔记录Jmeter 参数化之 CSV Data Set Config. 首先在开始记录之前,先搞明白2个问题 1.什么是参数化 ...
- Jmeter参数化-CSV Data Set Config
前言 一般来说,我们使用Jmeter来模拟HTTP请求时,比如模拟查询学生信息,我们通常把查询接口的入参(如学生姓名)写在HTTP请求中.当只需要查询1个学生的信息时,我们可以把这名学生的姓名准确的写 ...
- Jmeter参数化、检查点、集合点教程
在使用Jemeter做压力测试的时候,往往需要参数化用户名,密码以到达到多用户使用不同的用户名密码登录的目的,这个时候我们就可以使用参数化登录. 一.badboy录制需要的脚本.也可以用fiddler ...
随机推荐
- 使用python操作mysql数据库
这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...
- [转]安装PIL时注册表中找不到python2.7
如果在win7x64安装python2.7的时候选择了all user,则安装PIL的时候会显示找不到python. 解决办法:复制下面的代码到一个.py文件并运行: # # script to re ...
- Python重定向到文件
1.方式1 __file__ = open(r'log.txt', 'a') print >>__file__, "hello, world!" __file__.cl ...
- Scrapy爬虫实例教程(二)---数据存入MySQL
书接上回 实例教程(一) 本文将详细描述使用scrapy爬去左岸读书所有文章并存入本地MySql数据库中,文中所有操作都是建立在scrapy已经配置完毕,并且系统中已经安装了Mysql数据库(有权限操 ...
- Chrome浏览器扩展开发系列之十:桌面通知Notification
Desktop Notification也称为Web Notification,是在Web页面之外,以弹出桌面对话框的形式通知用户发生了某事件.Web Notification于2015.9.10成为 ...
- 如何用快速傅里叶变换实现DFT
[目标] 如何以 \(O(N \log N)\) 的效率将系数多项式转换为点值多项式. [前置技能] 众所周知,\(x^n=1\)的根有n个,而且它们分别是\(e^{\frac{2*π*i}{ ...
- Android系统--输入系统(十五)实战_使用GlobalKey一键启动程序
Android系统--输入系统(十五)实战_使用GlobalKey一键启动程序 1. 一键启动的过程 1.1 对于global key, 系统会根据global_keys.xml发送消息给某个组件 & ...
- Spring Boot 系列(三)属性配置&自定义属性配置
在使用spring boot过程中,可以发现项目中只需要极少的配置就能完成相应的功能,这归功于spring boot中的模块化配置,在pom.xml中依赖的每个Starter都有默认配置,而这些默认配 ...
- firefox插件开发及源码下载
在个别情况下,由于数据量巨大,造成显示性能的明显下降,此时使用c++开发firefox插件,可以提高用户使用体验. test.html: 在插件中,我们导出3个函数给js:AddStr, Pause, ...
- 干货~powershell与bash和docker在项目中怎么用
回到目录 这个标题够直接了吧,够坦诚了吧,也许你在项目里这三个东西都没有用到,但这三个东西在未来的两年里将成为最HOT的技术,它们不是什么框架,也不是什么设计模式,而是做为程序和环境快速部署而设计出来 ...