美文网首页@软件测试
【JMeter】参数化方法(二)

【JMeter】参数化方法(二)

作者: 太阳当空照我要上学校 | 来源:发表于2017-03-01 14:35 被阅读1613次

    文/amy

    前面 【JMeter】参数化方法(一)已简单介绍关于参数化的几种常用方法,

    关于如下配置以上几种参数方法,具体方法如下:

    1. 测试计划面板中定义的变量, 例如:数据库配置信息、IP 地址 可使用全局变量

    测试面板- 添加变量

    2. 【配置元件/ 用户自定义的变量】

    添加- 用户自定义的变量 添加自定义变量

    3.【配置元件/ CSV Data Set Config】  

    (1) 确定所需要准备变量值的参数,例: houseId, userId, premisesPermitAddr, agentId

    HTTP请求- 参数

    (2) 准备数据- csv 文件

    每一列变量对应的参数分别为: houseId, userId, premisesPermitAddr, agentId

    此处有3行数据,每一列表示一种参数,每一行表示一组参数。

    若有进程是循序3次,则第1次执行脚本是参数值是调用第一行数据,第2次执行脚本参数值是调用第二行数据

    csv 文件

    (3) jmeter 中添加 配置文件,可在线程组或sampler下添加,作用域取决于配合文件添加的位置

    添加 配置文件

    (3) 配置文件

    Filename: csv 文件路径,可用绝对路径或相对路径,为方便管理可用相对路径

    File encoding:文件编码,gb2312

    Variable Names:CSV文件中对应的变量值名称,每一列用","(英文逗号)隔开

    注:以上3个信息需手动配置,下面的信息可不用重新配置

    Delimiter(use'\t' for tab): 每一列使用 ,(英文逗号)相隔

    Allow quoted data?: 是否允许引用数据?

    Recycle on EOF?: 是否循环?

    Stop thread on EOF: 文件结束后是否结束进程? 

    Sharing mode:共享模式,即作用或为: 所有进程、当前进程组、当前进程、自定义

                                                                       

    添加 配置文件信息

    调用时可直接使用"${houseId}, ${userId}, ${premisesPermitAddr}, ${agentId}" 在对用的参数上

    4.【前置处理器/ 用户参数】

    添加- 用户参数 定义变量

    如图,username和password 分别有2组不同的取值,通过界面右下方的四个按钮,可以向列表中增加参数,增加参数值,删除参数和删除参数值。

    "每次迭代更新一次"选项控制参数值取值的变化规则,如果选中该选项,则参数的值在每个迭代中保持不变,在新的迭代开始时取下一个值。如果取消该选项,则参数值在每个在其作用域内的sampler发出请求时去下一个可用值。

    如果参数的取值范围很小,可使用用户参数比较合适;如果参数的取值范围很大,建议使用 csv data set config 方法

    5.【后置处理器/ 正则表达式提取器】

    添加- 正则表达式提取式

    栗子:将响应数据里的"code":"1" 中的 1 用正则表达式提取出来

    提取value 值 "1" 正则表达式提取方式

    调用时直接使用"${codestate}"

    6. JDBC 请求中将结果保存为变量输出

    SQL 语句 对应结果

    若将此SQL运行结果中的 id 值保存为变量值,以便作为后面请求的参数值,具体步骤如下:

    (1) JDBC 请求中- Variable names 填写需要保存为变量的 字段名称,此处需要提取出 id

    填写需要保存为变量的字段

    (2) 添加一个Debug PostProcessor 调试器可查看结果

    Debug PostProcessor 结果值

    id_#=1 表示 id 值有1个,id_1= 58856 表示这个值为 58856, 后面调用时 可使用"${id_1}"

    7.【选项/ 函数助手对话框】

    选项- 函数助手对话框 列出了系统给出的函数

    栗子:_CVSRead 函数是从外部读取参数,可以从一个文件中读取多个参数

    步骤:

    1. 新建一个data.txt 文件,username 和 password 参数值 如下:

    test1,1111

    test2,2222

    test3,3333

    步骤

    其中,CSV file to get values from | * alias: 表示要读取的文件路径,为绝对路径

    CSV 文件列号| next|*alias:从第几行开始读取,注意 第一行是 0,

    调用时直接填写生成的字符串,则

     username 为 ${__CSVRead(d:\data.txt ,0)}, 

    password 为${__CSVRead(d:\data.txt ,1)}

    以后 若有不足,欢迎大家指出 ~~~

    谢谢~~

    相关文章

      网友评论

        本文标题:【JMeter】参数化方法(二)

        本文链接:https://www.haomeiwen.com/subject/ebffgttx.html