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. linux下之mysql篇

    网上查到的一般是 yum install mysql yum install mysql-server yum intall mysql-devel 但是在centos7下  mysql-server ...

  2. 解析xml(当节点中有多个子节点)

    概要:解析一个xml,当一个节点中又包含多个子节点如何解析,对比一个节点中不包括其他节点的情况. 一,xml样例 <cisReports batNo="查询批次号" unit ...

  3. Java 线程面试题 Top 50(转 ImportNew)

    不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题.Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎.大多数待遇丰厚的Java开发职位都要求开发者精通多线程 ...

  4. SqlServer缓存依赖 示例

    ------------------------------------------------------------c#代码----------------------using System; ...

  5. JSONP、CORS解决跨域问题

    一.为什么会有跨域问题? 是因为浏览器的同源策略是对ajax请求进行阻拦了,但是不是所有的请求都给做跨域,对href属性都不拦截. 二.解决跨域问题的两种方式 JSONP CORS 三.JSONP 先 ...

  6. AI产业将更凸显个人英雄主义 周志华老师的观点是如此的有深度

    今天无意间在网上看的了一则推送,<周志华:AI产业将更凸显个人英雄主义> http://tech.163.com/18/0601/13/DJ7J39US00098IEO.html 摘录一些 ...

  7. ZetCode PyQt4 tutorial Dialogs

    #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial In this example, ...

  8. BZOJ3270: 博物馆【概率DP】【高斯消元】

    Description 有一天Petya和他的朋友Vasya在进行他们众多旅行中的一次旅行,他们决定去参观一座城堡博物馆.这座博物馆有着特别的样式.它包含由m条走廊连接的n间房间,并且满足可以从任何一 ...

  9. Python :random 随机数生成

    Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random() 用于生成一个0到1的随机符点数: 0 &l ...

  10. MySql 中的 FIND_IN_SET 的使用和相关问题

    MySql 中的 FIND_IN_SET 的使用和相关问题 QQ 群里有人讨论如果在 category_ids 中打开 12 的分类,而 category_ids 中的 ID 是以 逗号分开的. 使用 ...