Jmeter书中不会教你的(1) | 您所在的位置:网站首页 › jmeter计数器怎么调用 › Jmeter书中不会教你的(1) |
这几年Jmeter用的相对比较多,自己每次在做项目时也常会去翻看以前遇到的问题,记录的一些技巧,解决方案,也一直考虑把它整理出来,一来方便自己查找,二来也希望同行可以互相切磋。我写的这些文章不是针对Jmeter小白用户,可能叙述某些步骤时会直接跳过一些解释,不明白的或者表达错误的欢迎提出。目前所用的Jmeter版本是5.3。 通常我们在编写场景类脚本时需要引用之前提取或设置的变量,如先在线程组下右击创建一个配置元素,选择用户自定义变量,设置一个参数名为name,值为junjun。什么情况下需要用到这种配置元素?一般每次需要执行相同脚本不同参数时,如线程数量等 新增一个beanshell sampler, 按如下第一种方法${}来引用,打开右上角日志,执行。查看日志中报错信息,因为log.info只能打印字符串,而在引用name时未指定字符串类型 //提取name变量值 //方法1:${} name1=${name}; log.info(name1);
第二种方法,使用vars.get()方法,括号里直接填写变量名,可以看到报错信息Undefined argument: name,意思是name这个参数么有定义,就是识别不了这个参数,原因是vars.get在获取变量时也需要打双引号 //方法2:vars name2=vars.get(name); log.info(name2);修改如下,再次执行结果已打印,由于vars.get()获取的变量值为字符串类型,所以在log.info()打印时可以直接输出了。 //方法2:vars name2=vars.get("name"); log.info(name2);2. 获取了变量后,如果要执行过程中需要修改变量后引用怎么做呢?新建一个2,输入如下再执行,又看到了熟悉的错误,分析下,name3做了一个字符串连接打印输出,再将name3的值存入一个新的变量name4并打印,报错的原因是vars.put()中指定新的变量时必须打双引号,字符串类型 name2=vars.get("name"); log.info(name2); name3=name2+"001"; log.info(name3); //将name3变量的值存入name4变量 vars.put(name4,name3); log.info(vars.get("name4"));修改 name2=vars.get("name"); log.info(name2); name3=name2+"001"; log.info(name3); //将name3变量的值存入name4变量 vars.put("name4",name3); log.info(vars.get("name4"));总结下本文主要讲的就是2点 1.在beashell中引用变量时可以用${} 也可以用vars.get(String key),需要注意的是双引号使用,获取的数据类型,本篇例子都是字符串类型 2.在beashell中设置新变量时可以用vars.put(String key,String value) ------------------------------------------------------------------------------- 如果觉得我的文章对您有用,请收藏+关注,您的支持是我坚持的动力!
|
CopyRight 2018-2019 实验室设备网 版权所有 |