小孙同学

导航

 

一、jmeter配置元件的介绍和作用

  JMeter配置元件可以用来初始化默认值和变量,读取文件数据,设置公共请求参数,赋予变量值等,以便后续采样器使用。将在其作用域的初始化阶段处理。

       配置元件(Config Element)提供对静态数据配置的支持,可以为取样器设置默认值和变量。

二、jmeter常用配置元件使用

  1、CSV Data Set Config

    ①配置的参数说明

      Filename:待读取文件的名称。可以写入绝对路径,也可以写入相对路径(相对于bin目录),如果直接写文件名,则该文件要放在bin目录中。对于分布式测试,

            主机和远程机中相应目录下应该有相同的CSV文件。

      FileEncoding:文件读取时的可选择的编码格式,不填则使用操作系统的编码格式。

      Ignore first line:是否忽略首行,如果csv文件中没有表头,则选择false。

      Variable Names:变量名列表,多个变量名之间必须用英文逗号分隔。如果该项为空,则文件首行会被读取并解析为列名列表。

      Delimiter:参数分隔符,将一行数据分隔成多个变量,默认为英文逗号,也可以使用“\t”。如果一行数据分隔后的值比Vairable Names中定义的变量少,

            这些变量将保留以前的值(如果有值的话),没有值的话报错。

      Allow quoted data?:是否允许变量使用双引号,允许的话,变量将可以括在双引号内,并且这些变量名可以包含分隔符。

      Recycle on EOF?:是否循环读取csv文件内容,达到文件结尾后,是否从文件开始循环重新读取;默认为 true。

      Stop thread on EOF?:是否循环读取csv文件内容,达到文件结尾后,线程是否该终止;默认为 true。

      Sharing mode:1、All threads(默认):一个线程组内,各个线程(用户)唯一顺序取值;2、current thread:一个线程组内,各个线程(用户)各自顺序取值;

               3、线程组各自独立,但每个线程组内各个线程(用户)唯一顺序取值;

  2、HTTP Header Manager

    ①支持用户添加或者重写HTTP请求头。JMeter支持多个信息头管理器。多个信息头条目合并成一个信息头列表,跟随http请求一并提交到服务端。

    ②当有多个信息头管理器,且不同的管理器内有名称相同的信息头条目存在时,顺序靠前的管理器的信息头条目会覆盖后面的;

    ③当只有一个信息头管理器,但管理器内有名称相同的信息头条目时,会同时生效;

    ④name:请求头的名称,比如Content-Type;value:请求头的值,比如application/json;charset=utf-8。

  3、HTTP Cookie Manager

    ①像web浏览器一样存储和发送Cookie。如果有一个HTTP请求和相应里包含Cookie,Cookie管理器会自动存储Cookie,那么接下来针对特定web站点的所有请求中

      使用该Cookie。可在结果树中查看。

    ②参数说明

      Clear cookie each Iteration:每次线程组运行前,都会清除cookie,但是如果是手动添加的cookie,不会被清除;

      Cookie Policy:选择Cookie的管理策略,建议选择兼容性,兼容性强;

      User Define cookie:用户自定义的cookie。

  4、HTTP Request Defaults

    ①把这些请求时重复使用的参数或配置封装起来,设置多次使用,后续请求不要再单独配置。

  5、Counter(计数器)

    ①测试执行过程中会记录迭代次数。可以在线程组任何位置创建,允许用户配置起点、最大值和增量。配置后,计数器将从起点循环到最大值,然后重新开始,

     直到线程结束。允许用户创建一个计数器,可在线程组中任何地方被引用。

    ②参数说明

     Starting value:启动,记录数量起始值

     Increment:递增,记录迭代次数步长,1后是2,步长就是1

     Maximum value:记录的最大值

     Number format:计算器格式,可以是数字,例如000000(6位长度,000,000(6位长度,3位间隔开);字符加数字,例如CUST_000000(字符加6位数字 )

     Exported Variable Name:引用变量名称,记数器记录的值可以存入的此引用名(变量),可供其他元件调用

     Track counter independently for each use:与每位用户独立的跟踪计数器,每个线程都有自己的计数器,相互不干扰

     Reset counter on each Thread Group Iteration:每次迭代复原计数器。

  6、Random Variable(随机变量)

    ①生成用户期望的随机的数值来引用

    ②参数说明

      Variable Name:变量名,存储随机字符串的变量的名称。

      Output Format:格式化字符串,要使用的java.text.DecimalFormat格式字符串。例如,“ 000”将生成至少3位数字,或者“ USER_000”将生成USER_nnn形式的输出。

                如果未指定,则默认为使用Long.toString()生成数字。

      Minimum Value:最小值;生成的随机数的最小值(长整数)。

      Maximum Value:最大值;生成的随机数的最大值(长整数)。

      Seed for Random function:随机种子,随机数生成器的种子。默认值为当前时间,以毫秒为单位。如果在“将每个线程”设置为true的情况下使用相同的种子值,

                        则与“ 随机” 类一样,您将为earch线程获得相同的值。

      Per Thread(User):每个线程,如果为False,则在线程组中的所有线程之间共享生成器。如果为True,则每个线程都有自己的随机生成器。

   7、User Defined Variables(用户自定义的变量)

     ①用户自定义变量用于请求中参数的重复使用

     ②参数描述

      User Define Variables:用户定义的变量。变量名称/值对。您需要在$ {...}结构的方括号内放置“名称”(Name)列下的字符串,以便以后使用变量。

                     整个$ {...}将由“值”列中的字符串替换。

posted on 2020-10-25 11:00  是孙同学啊  阅读(473)  评论(0)    收藏  举报