• Jmeter常用函数__setProperty();__Property();__P()


    ${__setProperty()}函数介绍

    官方文档解释:

    The setProperty function sets the value of a JMeter property. The default return value from the function is the empty string, so the function call can be used anywhere functions are valid.
    该函数用来给JMeter属性设置值,默认返回值为空字符串,所以在函数在任何地方被调用是有效的

    用法:

    ${__setProperty(property name, property value, True/False)}

    property name : 属性名, 必填

    property value  :  属性值,必填

    True/False : 是否返回原始值,非必填,当设置为:true,将返回原始值

    作用域:跨线程组调用, 可以在任意地方调用,但不能跟在import xxx 后面

    备注:参数不用加双引号引用

    一般使用搭配参数化使用,如在线程组中提取参数后,可以使用后置处理器进行使用

    查看是否成功,可以通过变量显示,debug sample等;

    ${__property()}函数介绍

    官方文档解释:The property function returns the value of a JMeter property. If the property value cannot be found, and no default has been supplied, it returns the property name. When supplying a default value, there is no need to provide a function name - the parameter can be set to null, and it will be ignored.
    函数返回JMeter的属性值。如果找不到到属性值而且没有提供默认值,将返回属性名。在有提供默认值时,可以选择不用提供引用名(可选的),函数名的值可以设置为null,但会被忽略函数值;

    用法: 

    ${__property(property name , variable name, default value)}
    
    porperty name:  要检索的属性名,必填
    
    variable name: 引用名,用于被赋值的变量,非必填
    
    default value:默认值,非必填
    ${__ property(uuid)} :
    返回uuid的值
    
    ${__property(uuid, aa)} :
    拿到uuid的值并将uuiduuid赋值给 aa;
    
    ${__property(uuid, aa, abc)}:  
    拿到uuid的值,如果 uuid 未定义即找不到,则把默认值abc的变量值赋值给 aa , aa ,如果默认值未定义则返回默认值的属性名;
    
    ${__property(uuid, , abc)}: 
    返回的是匿名变量名,拿到uuid, 如果默认变量有赋值,则把abc的变量值赋值返回,如果默认值没有定义,则任何默认值的变量名;

    ${__P()}函数介绍

    官方文档解释:This is a simplified property function which is intended for use with properties defined on the command line. Unlike the __property function, there is no option to save the value in a variable, and if no default value is supplied, it is assumed to be 1. The value of 1 was chosen because it is valid for common test variables such as loops, thread count, ramp up etc.
    这个是简化搬的属性函数,旨在为用户在命令行使用属性定义。区别于__property函数,它不能有存储值的变量;如果没有提供默认值,默认为1,选择1的原因是它对常用的测试变量有效,例如:循环,线程数,ramp up.

    用法: 
    
    ${__P(property name(要检索的属性名,必填), default value(默认值,非必填,不填默认为1)}
    作用域:可以跨线程使用
    注意:两个变量之间一定要用“,”隔开,如果变量中包含,需要要“\”反斜线转义
    支持在命令行与beanshell中使用

    ${__P( arg, abc)}:返回arg的值,在arg未赋值情况,返回默认值abc,如果abc未赋值则返回属性名

     

    总结:

    ${__setProperty()}与${__property()}/${__P()}一起配合使用,setProptety等于把值拿出来, 

    __property/__P 1.可以把setProperty 的值直接拿出来, 2.可以对已存在的变量重新赋值 

    __P是__property函数的简化版,用来返回jmeter属性的值,可以在命令行中使用也可以在beanshell中用,

    举个例子:${__P(prop1)} 会返回属性prop1的值;${__P(prop1,www.bidu.com)} 会返回属性prop1的值,如果prop1未定义值,则返回www.baidu.com;

    __property和__P之间的区别:用法上__property函数仅仅是比__P函数多了一个可以存值的变量,举个__property用法例子:${__property(prop1,var1,shanghai)}会返回prop1的值,如果prop1未定义值则会返回shanghai,同时会将prop1的值存到变量var1中

    参考:

    https://blog.csdn.net/evanzhang_z/article/details/102715619

  • 相关阅读:
    路由器基础配置之ospf基础配置
    路由器基础配置之广播多路访问链路上的ospf
    路由器基础设置之ospf
    linux命令之文件系统权限操作常用命令
    路由器基础配置之路由重分布
    路由器配置 之 DHCP+DHCP中继服务配置
    路由器配置 之 PAP与CHAP认证
    基于链路的OSPF MD5口令认证
    压缩和归档操作(16个命令)
    基于链路的OSPF简单口令认证
  • 原文地址:https://www.cnblogs.com/shoebill/p/14641768.html
Copyright © 2020-2023  润新知