zoukankan      html  css  js  c++  java
  • jmeter(19)函数使用threadNum log randomstring property time

    函数助手
    1、Apache JMeter函数是特殊值,可以填充测试树中任何Sampler或其他元素的字段。它是使测试计划灵活和可维护的非常有用的工具。
    2、函数调用如下所示:
    ${_ functionName (var1, var2, var3) ]其中"_ functicnName"表示函数名称。括号()包围发送给函数的参数,例如${_time. (YMD) }。
    3、实际参数因功能而异。不需要参数的函数可以省略括号,例如${_thceadNum}。

    JMeter函数的结构是: ${_functionName(var1, var2, varN)}

    1. __threadNum----获取信息函数

    1、线程数函数只返回当前正在执行的线程的编号。这些数字独立于ThreadGroup,这意味着从该函数的角度来看,一个线程组中的线程#1与另一个线程组中的线程#1无法区分(做不到的)。

    2、此功能在任何配置元素(例如用户定义变量)中不起作用,因为它们是从单独的线程运行的。在测试计划中使用它也没有意义。即不能用在配置元件和测试计划中

    作用:获取当前正在执行的线程的编号
    作用:通过获取到线程数名称来控制线程数的执行次数,严格控制执行多少次,也可以指定哪个线程数去运行某个请求。

    用法:${__threadNum},返回当前正在执行的线程的编号,而且不依赖于线程组;不能用在配置元件 和 测试计划中。

    也就是说以这个函数的结果来看,不能区别线程组1的线程#1 和 线程组2的线程#1,如下图所示:
    在这里插入图片描述





    请求1: 路径11  ------期望:执行2次 执行1次

    请求2:路径22------ 期望:执行2次

    期望结果:
    11 11 22 22 11

    2.log函数----获取信息函数



    作用:当对一些特定信息进行输出的话,进行打印的话,通过log函数看我们的请求是否执行成功或者判断脚本是否执行成功。

    记录一条日志,并返回函数的输入字符串。
    可以设置不同的日志级别,如 OUT 和 ERR 将会分别输出记录到 System.out 和 System.err 中。在这种情况下,输出总是会被打印(它不依赖于当前的日志设置)。

    1、记录一个函数并将其返回到输入字符串中。

    2、配置参数

    1) String to be logged (and returned):要记录(并返回)的字符串-forum.php

    2) Log level (default INFO) or OUT or ERR:日志级别-OUT,这意味着此字符串将打印到系统日志中。(默认INFO)或OUT或ERR)
    另外OUT和ERR两个级别会把日志级别打印到jmeter运行的控制台,而不是页面的日志error!黄色


    3) Throwable text (optional) :
    4) Additional comment (optional)
    :附加评论-一些评论可投递文本(可选),比如输入test

    4)单击"生成",将在底部字符串中获得结果现在,您可以在脚本中的任何位置复制并粘贴它。

    ${__log(forum.php,INFO,,test)}    

    ${__log(forum.php,OUT,test,)}

    5)保存脚本。清除以前的结果,启动脚本。

    6)检查结果和系统outlog。你可以看到所有信息打印在系统日志中。并带有“一些注释”。

    也可以使用__log (forum.php),不加参数。直接打印。

    3.__RandomString----数据计算函数
    作用:根据给定的字符生成指定长度的随机字符串

    根据给定的字符,生成指定长度的随机字符串。

    参数:
    Random string length
    :生成的随机字符的长度
    Chars to use for random string generation:用来生成随机字符串的字符,可以是纯数字,纯字符,字符字母数字组合。
    Name of variable in which to store the result (optional):保存结果的变量
    例如:
    ${__RandomString(5,abcde,ran)}
    随机生成一个5位长度的字符串,并保存在变量 ran 中,后续可以通过 ${ran} 来调用。

    1、__RandomString ()。例如。它可用于测试具有大量无效用户网站的登录形式。注意.RandomSting.()的工作原理。

    2、参数说明

    _RandomString (VAR1,VAR2, VAR3),其中:

    * var1-随机字符串长度

    * var2-用于随机字符串生成的字符

    * var3-存储結果的变里名称(可选)

    两种方式:

    一、 ${_ RandomString(12,123)}

    这种只有2个参数,直接作为参数被引用,没有变量,变量是可选的。12表示长度,123表示用于随机生成的字符串

    二、${ RandomString(12,qwerasdf12345,random)}

    Random作为变量可以给下一个请求使用。
    场景:请求1使用变量,请求2引用这个变量。

    4.__property---属性信息函数




    作用:对多个整数求和

    1、JMeter的文件之-是jmeter properties。 它包含Meter的所有主要属性。这些属性在测试中很重要。可以在发IMETER. HQME. DIB./ bin目录中找到此文件。有许多属性。在运行时。它们的许多值在测试期间都很有用。要访问属性值,我们可以使用$__ property ( )函数。

    2、__property(),属性函数返回JMeter属性的值。如果找不到属性值。并且未提供默认值,则返回属性名称。提供默认值时,无需提供函数名称该参数可以设置为null,并且将被忽略。

    3、例如:
    ${__property(user.dir,pp,否)}
    ${__property(user.dir,pp,是)}

    ${__ property. (user.dir) }-返回user.dir的值

    ${__property. (user.dir,UDIR) )返回user_dir的值并保存在UDIR中  引用用${UDIR}

    S{__property. (abcd,ABCD,atod) }-返回属性abcd的值(如果未定义则返回"atod)并保存在ABCD中, 引用用${ABCD}

    ${__property. (abcd,,atod) )-返回属性abcd的值(如果未定义则返回"atod")但不保存

    属性名称要检索的属性名称"是”

    变重名称用于重用此函数计算的值的引用名称

    默认值属性“否"的默认值


    5.time --获取信息函数


    作用:以多种格式返回当前时间,如果省略了格式字符串,那么函数会以毫秒的形式返回当前时间。其他情况下,当前时间会被转成简单日期格式。

    1、有时使用JMeter测试的业务用例需要提供日期和/或时间(即模拟日期或时间选择器事件,提供唯一参数或为结果文件添加前缀)

    2、该__time函数使用的SimpleDateFormat的Java SDK类实现。有关模式和示例,请参阅JavaDoc页面

    比如:

    YYYY-MM-dd HH:mm:ss.SSS

    2018-17-25 10:17:24.553

    3、参数

    1)一个时间

    2)一个变量名称,供引用。


    每点一次生成就会发生变化。

    参考博文:https://blog.csdn.net/lijing742180/article/details/86579160






  • 相关阅读:
    1091. Shortest Path in Binary Matrix (M)
    1342. Number of Steps to Reduce a Number to Zero (E)
    0242. Valid Anagram (E)
    京准为您提供选卫星时钟(NTP时钟服务器)技巧
    时统设备(NTP授时服务器)产品概述与介绍
    NTP母钟(NTP网络子钟)为医院提高办公效率
    基于NTP/SNTP的网络授时服务系统方案
    NTP子钟(GPS母钟)功能与调试安装配置
    GPS时间统一系统(时统设备)介绍与应用
    GPS子母钟系统(电子时钟系统)让医院信息化更有意义
  • 原文地址:https://www.cnblogs.com/yiyaxuan/p/12390521.html
Copyright © 2011-2022 走看看