• Jmeter接口模版说明


    此接口模板,采用了csv配置文件和“关键字驱动框架”相结合的方式。根据实际业务需求,在jmeter中添加http请求,然后把各种参数信息与预想结果,通过csv文件传入,进行快速校验。

    以“掌门发布”的几个http请求做了sample,以下做相关的简单说明。

    注意:“关键字驱动框架”可以参看Jmeter知识点中的文档说明。



    一、配置文件

    CsvFile目录下的两个配置文件:“token.csv” 和“case.csv”。

    注意:

    (1)Jmeter只能读取utf-8格式的csv文件。

    (2)可新建一个纯文本的csv文件,可用excel文件打开进行编辑,保存后,需要把该csv文件转成“UTF-8”格式。

    1.token.csv文件

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

    格式内容:account,token

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

     格式字段说明:

    (1)account:账户

    (2)token:账户的token信息

    注意:在此文件中,两个字段内容用“,”分割。

    文件内容如下图所示:

    Jmeter中需要做如下设置,才能读取到csv文件中的字段内容。

    (1)文件名:建议用相对路径,否则换了一个路径就读取失败了。(另外,不管在什么系统下请用“/”作为路径分割符,可保证在任何环境中都能读取正常。)

    (2)文件编码:utf-8(建议使用)

    (3)变量名称:与csv文件对应的字段名称(请用英文或者英文+数字字符)

    (4)忽略首行:True:不读取首行;False:从首行开始读取。如果csv文件的首行是一些字段名称或者描述信息,不需要作为参数读入时,需选择True。

    (5)分隔符:csv文件中,字段内容之间使用的间隔符。(默认是逗号,可以自行选择合适的分隔符)

    (6)是否允许带引号?:True:文件可带有引号字符;False:文件中没有引号字符。

    (7)遇到文件结束符再次循环:True:即使到文件末尾,重新从头开始读取,不停循环。False:到文件末尾就不再循环。

    (8)遇到文件结束符停止线程:True:到文件末尾,线程停止。False:到文件末尾,不停止线程。

    2.case.csv文件

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

    格式内容:caseId,casename,action,params,results

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

    格式字段说明:

    (1)caseId:case编号

    (2)casename:case名称

    (3)action:对应jmeter中要执行的方法名

    (4)params:参数信息

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

    格式:字段名1=字段值1&字段名2=字段值2

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

    如下图:

    (5)results:响应结果校验信息

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

    格式:字段名1=预想值1&字段名2=预想值2

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

    如下图:

    Jmeter中需要做如下设置,才能循环读取到csv文件中的字段内容。

    二、action设置

    1、在“关键字驱动框架”中,在TestFragment下的“Switch控制器”中设置“Switch Value”为“${action}”,将通过csv文件传入action值。

    注意:上述只需一次设置。

    2、在上述的“Switch Controller”下,添加一个新的“Switch Controller”,设置其名称为action对应的值。比如,csv文件中action的值为“loadSurvey”,那么设置名称为“loadSurvey”

    3、然后再下方添加http请求。

    三、http请求

    1、Get请求

    (1)参数值设置:

    如下图所示,

    • csv文件信息:
      • params列需要添加所需参数的信息(不同参数之间用“&”分割,key与value之间用“=”分割)
      • result列为预想的结果信息(不同的校验内容之间用“&”分割,key与value之间用“=”分割)

    • 参数化的请求信息

    在参数一栏添加字段名(code),其值为csv文件中获取的code值,用${code}引用。

    注意:也可以直接在url后面拼接,比如”/api/ncov/survey/loadSurvey?code=${code}”

    (2)结果校验:

    在每个http请求下放置一份如下图所示的“返回结果检验(共通)”,通过其可以对“预想结果”和“实际值”做比较。(请确认当前路径下的Comm目录中是否有校验用的java文件。)

    2、Post请求

    (1)参数值设置:

    如下图所示,

    • csv文件信息:
      • params列需要添加所需参数的信息(不同参数之间用“&”分割,key与value之间用“=”分割)
      • result列为预想的结果信息(不同的校验内容之间用“&”分割,key与value之间用“=”分割)

    • 消息体数据(body)的设置

    在“消息体数据”一栏中,编写body信息,并引用csv中的变量值(或者上下文的变量值)。

    (2)结果校验:

    结果校验同get请求。

    3、文件上传的请求

    与上述post请求不同的是,文件信息不写在body中,而是写在“文件上传”一栏中,如下图设置。但必须勾选“对POST使用multipart / form-data”。

    4、获取请求结果

    一个请求执行完成后,可能需要从其返回的响应文本中提取信息。

    (1)jp@gc - JSON/YAML Path Extractor提取器 

    用JSONPath 表达式来提取。当然还有其他的json提取器,也可以使用。

    注意:

    (1)该提取器的使用需先安装JSON Path Extractor插件

    (2)JSON方式的提取,会打乱提取内容的原有顺序,其会重新按照ASCII码顺序排列。

    (2)正则表达式提取器

    是通过正则表达式的方式提取。(当使用JSON提取会打乱顺序时,可以使用正则表达式提取器)。

    三十六般武艺,七十二般变化,修练出个人品牌并发出光芒
  • 相关阅读:
    SQLite的sqlite_sequence表
    缓存区溢出漏洞工具Doona
    SQLite的sqlite_master表
    dfs1321
    三维bfs(HUD1253胜利大逃亡)
    dfs模版
    poj3259: Wormholes(BF模板题)
    Bellman-Ford算法
    POJ1611:The Suspects(模板题)
    poj3126
  • 原文地址:https://www.cnblogs.com/deeptester-vv/p/14760424.html
Copyright © 2020-2023  润新知