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中各种参数化设置的方法的更多相关文章

  1. Jmeter中的参数化常用的几种方式

    Jmeter中的参数化常用的几种方式,这里讲一下前两个方式,最后一个在csv参数化里已详细讲解. 1.用户参数 2.函数助手 3.CSV Data Set Config  一.用户参数 位置:添加-前 ...

  2. 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)

    目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...

  3. Linux中Tomcat 自动设置CATALINA_HOME方法

    Linux中Tomcat 自动设置CATALINA_HOME方法 在服务器部署中,我们经常会出现“在一个服务器上运行多个tomcat服务”的情况. 使用如下方法设置,可以无限复制平移扩展Tomcat, ...

  4. jmeter中的参数化

    1.那些场景需要参数化? 1.登陆认证信息 2.一些和时间相关的,违反时间约束的[时间点和当前时间不一致的情况等等] 3.一些受其他字段约束的[例如字段的一些限制条件] 4.一些来自于其他数据源[例如 ...

  5. iOS中UITextField常用设置和方法

    //初始化textField并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(, , , )]; // ...

  6. github for window 中 git shell 设置代理方法和解决ssl证书错误的问题

    体验了一下传说中的 github for windows(操作git有很多的方法,我还没有学会,所以找了个简单的方法),听说用起来还不错,毕竟也开始接触了github.下载地址是 http://win ...

  7. Jmeter中引入class文件的方法

    ------------------------------------------------------------------------------

  8. 『动善时』JMeter基础 — 23、JMeter中使用“用户自定义变量”实现参数化

    目录 1.用户自定义变量介绍 2.使用"用户自定义变量"实现参数化 (1)测试计划内包含的元件 (2)数据文件内容 (3)测试计划界面内容 (4)线程组元件内容 (5)CSV数据文 ...

  9. 『动善时』JMeter基础 — 24、JMeter中使用“用户参数”实现参数化

    目录 1.用户参数组件介绍 2.用户参数界面介绍 3.使用"用户参数"组件实现参数化 (1)测试计划内包含的元件 (2)线程组元件内容 (3)HTTP请求组件内容 (4)用户参数组 ...

随机推荐

  1. 二、深度解析HTML5之视频播放和音频播放

    一:视频播放 传统的视频音频播放是通过flash插件的形式完成,不是所有的浏览器都安装了flash插件,而且手机端不支持flash,这就导致视频和音频的播放会有很大的麻烦. 于是,HTML5增加音频和 ...

  2. 解决maven install报错信息(Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile )

    Maven install失败 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (d ...

  3. 量化投资策略:常见的几种Python回测框架(库)

    量化投资策略:常见的几种Python回测框架(库) 原文地址:http://blog.csdn.net/lawme/article/details/51454237 本文章为转载文章.这段时间在研究量 ...

  4. Windows下Java JDK8配置环境变量

    JDK最新版已经出到了jdk8u60,下载安装完成后,还需要配置环境变量,下面小编就给大家分享下jdk 8.0的环境变量配置教程,希望大家喜欢. jdk8.0环境变量配置教程 右键选择 计算机→属性→ ...

  5. Mac OS Alfred 2 tips

    From: http://www.uuair.cn/?p=64 写这个东西,我没敢叫指南之类,只能算是技巧,因为Alfred这个软件的强大,我还没研究明白,还有好多功能自己没搞懂,所以写一些我发现或者 ...

  6. debugfs文件系统

    debugfs: https://www.cnblogs.com/helloworldtoyou/p/6281415.html /proc/bus/input/devices /sys/kernel/ ...

  7. maven学习--基础篇

    2016-01-5 16:13:43 发现一些错误,文章修改中…… (部分图片截取自其他地方,不是很清楚) 一. maven的项目创建和基本命令 maven是一个项目管理工具,包含了一个项目对象模型P ...

  8. brave-zipkin的日志源码分析

    其实在zipkin的日志里面作为发送端日志两个,sr,ss,这个日志是servlet产生的:接收端日志是四个,分别是cr,sr,ss,cs:cr和cs分别是上游的日志的信息:ss和sr是接收端输出的日 ...

  9. JSP动作指令

    JSP动作指令 动作指令与编译指令不间,编译指令是通知 Servlet 引擎的处理消息,而动作指令只是运行时的脚本动作.编译指令在将JSP 编译成 Servlet 时起作用:处理指令通常可替换成 Ja ...

  10. wiremock 模拟服务接口提供前端使用

    前后端分离同步开发时,如果前端需要等后端把接口都开发完了再去动工的话,项目周期会拉长. 以前开发时,一般前期是先把接口文档写的差不多了,要么是让前端自己构造模拟数据,要么是后端在开个控制器专门提供模拟 ...