Jmeter中各种参数化设置的方法
Jmeter中有较多需要参数化测试的地方:
1.从一个用户登录的接口获取登录后的token值,取值后用于后续接口调用
2.获取用户浏览后的cookies信息,需要用到HTTP Cookie 管理器来为同一线程组提供通用的cookies信息
Jmeter中通过${}形式来取参数值
当取值为变量,${变量名}
当取值为函数,${_函数名(参数1,参数2,参数3)}
json中和parameter中的取值方法相同
在获取接口信息的时候,注意查看传输的头信息中的Content-Type
Content-Type:application/json,使用Body Data上传json格式的参数
Content-Type:application/x-www-form-urlencoded,使用Parameter上传参数
参数化的几种方法
(一)CSV Data Set Config的设置(从csv文件导入参数)
1.创建一个csv文件,内容为参数的值集,每一个参数占一列,第一行就开始写参数值,不要写参数名,“测试用户.csv”的首列内容为email,第二列为password
2.在http://zkread.com/login测试计划右键添加一个配置元件“config element”->“CSV Data Set Config”
3.Filename处填写csv文件的完整路径
(本机服务器操作,填写csv完整路径;远程服务器操作,将csv文件放在jmeter的bin目录下,直接填写文件名)
4.Virable Names中填写变量名,如果csv文件中有多个变量,则用逗号隔开
在http://zkread.com/login测试计划中设置CSV data set config,引用csv中的数据时
name中填写接口的参数名
value值填写${username}
(二)从数据库获取
下面是从不同数据库连接JDBC 的方法
mysql数据库:在jmeter的lib/ext目录下添加mysql-connection-java-5.1.26-bin.jar包
sql server 数据库:下载sqljdbc4.jar 放到 jmeter根目录的lib目录下
oracle数据库:将oracle数据的安装目录下面的\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar 放到jmeter根目录下的lib目录下
在线程组添加配置元件JDBC Connection Configuration
设置内容如下
默认配置都不需要更改,Variable Name为连接名称,在后面的JDBC request中对应
在Database Connection Configuration中设置Database URL
Username和Password为数据库登录用户名和密码
不同数据库具体的填写方式,可以参考下面的表格(没有DB name可以不填):
Datebase |
Driver class |
Database URL |
MySQL |
com.mysql.jdbc.Driver |
jdbc:mysql://host:port/{dbname} |
Oracle |
oracle.jdbc.driver.OracleDriver |
jdbc:oracle:thin:user/pass@//host:port/service |
在线程组添加配置元件JDBC Request
Variable Name和上面的对应
query中填写查询语句
Variable Names填写要获取的参数名,用逗号隔开
在线程组添加配置元件Debug Sampler可以查看数据库的取值结果
(三)用户定义的变量
可以添加在测试计划,也可以添加在线程组中,也可以添加在请求中,使用的域不同。
使用HTTP cookies 管理器也相当与定义了一个cookies,jsessionid,sessionid的值。
(四)从函数获取变量
jmeter选项中的函数助手对话框,可以添加和查看函数。
参考资料:
cookies 管理器的使用:
http://blog.csdn.net/g695144224/article/details/51802862
token使用中的正则表达式:
https://www.cnblogs.com/wuyepiaoxue/p/5661194.html
JDBC Request使用:
http://blog.csdn.net/hwhua1986/article/details/64442943
Jmeter中各种参数化设置的方法的更多相关文章
- Jmeter中的参数化常用的几种方式
Jmeter中的参数化常用的几种方式,这里讲一下前两个方式,最后一个在csv参数化里已详细讲解. 1.用户参数 2.函数助手 3.CSV Data Set Config 一.用户参数 位置:添加-前 ...
- 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)
目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...
- Linux中Tomcat 自动设置CATALINA_HOME方法
Linux中Tomcat 自动设置CATALINA_HOME方法 在服务器部署中,我们经常会出现“在一个服务器上运行多个tomcat服务”的情况. 使用如下方法设置,可以无限复制平移扩展Tomcat, ...
- jmeter中的参数化
1.那些场景需要参数化? 1.登陆认证信息 2.一些和时间相关的,违反时间约束的[时间点和当前时间不一致的情况等等] 3.一些受其他字段约束的[例如字段的一些限制条件] 4.一些来自于其他数据源[例如 ...
- iOS中UITextField常用设置和方法
//初始化textField并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(, , , )]; // ...
- github for window 中 git shell 设置代理方法和解决ssl证书错误的问题
体验了一下传说中的 github for windows(操作git有很多的方法,我还没有学会,所以找了个简单的方法),听说用起来还不错,毕竟也开始接触了github.下载地址是 http://win ...
- Jmeter中引入class文件的方法
------------------------------------------------------------------------------
- 『动善时』JMeter基础 — 23、JMeter中使用“用户自定义变量”实现参数化
目录 1.用户自定义变量介绍 2.使用"用户自定义变量"实现参数化 (1)测试计划内包含的元件 (2)数据文件内容 (3)测试计划界面内容 (4)线程组元件内容 (5)CSV数据文 ...
- 『动善时』JMeter基础 — 24、JMeter中使用“用户参数”实现参数化
目录 1.用户参数组件介绍 2.用户参数界面介绍 3.使用"用户参数"组件实现参数化 (1)测试计划内包含的元件 (2)线程组元件内容 (3)HTTP请求组件内容 (4)用户参数组 ...
随机推荐
- 使用C++实现二叉搜索树的数据结构
需要注意的地方: ①二叉搜索树删除一个指定结点R,若R为叶子结点,则将R的父结点中指向R的指针改为指向nullptr:若R的左右子结点一个为空,一个非空,则将R的父结点中指向R的指针改为指向R的非空子 ...
- 关于cookie和session的使用和理解
由于项目需要,最近用session容器比较多,传载的同时加上了自己的一些理解,不足之处还请大家补充和纠正. 一.cookie机制和session机制的区别 ********************** ...
- vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb
vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help vimgdb 在UNIX系统最初设计时,有一 ...
- Windows7 SP1 64bit配置IIS7.5和ASP.NET4
一.安装前的环境 1. Windows7 SP1 64bit: 2. 在安装IIS7.5之前,安装了Visual Studio 2010或.NET Framework4: 二.安装IIS7.5 1. ...
- QLoo graphql engine 学习一 基本试用(docker&&docker-compose)
说明:使用docker-compose 进行安装 代码框架 使用命令行工具创建 qlooctl install docker qloo-docker 运行qloo&&gloo 启动 ...
- OrmLite动态创建表,一个实体类创建多张表的的偏招
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/LonelyRoamer/article/details/26299355 在做一个Android的项 ...
- Git资料
git作为流行的分布式版本管理系统,虽然入门有点难,不过学会还是很有用的,尤其是针对技术人员.它从2005年Linux作者两周用C++写的一个版本发展到现在这么流行也是有原因的. Downloads ...
- django创建第一个项目helloworld
环境:centos 7,已安装python 3.6环境 1.安装django并创建django第一个项目 1.1.使用pip安装django# pip install Django或指定安装版本# p ...
- CentOS7.2部署FTP
目前Linux大部分部署的FTP服务器都是vsftpd,至于为什么,暂时没什么必要深究. 1.安装vsftpd # yum check-update //检查可更新的程序,也可以不更新直接安装,以防万 ...
- Linux Namespace
转载请注明出处,并保留以上所有对文章内容.图片.表格的来源的描述. 一.Linux Namespace Linux Namespace是Linux提供的一种OS-level virtualizatio ...