这个计划中定义了以下组件:用户自定义变量:
里面定义了2个变量,一个是us(注意,未对它初始化),一个变量名是:test ,值为:123456一个BeanShell Sampler:
${test}表示传入BeanShell Sampler的参数,也就是我们前面定义的test参数,当然,如果需要传入多个参数,
一直写下去就可以,不需要标点隔开!
Script区域的2句话解释(java语法):
第一句将${test}的值转成String类型的(因为这里面对自定义参数复制只支持String)并赋值给xxx变量;
第二句,将xxx变量的值在赋值给我们前面定义的变量us一个HttpRequest Sampler(index),
这里定义了一个http请求,我们要验证的就是最后的请求url是不是:/shanghai/123455一个对于index的相应断言,一个查看结果树的监听器。(这里略过)
下面就是见证奇迹的时候,我们来运行一下这个计划:
从结果树中可以看出,我们果然把test变量的值传递给了us,
也许这时有人会问,这有什么用,我来细说,举个实际的场景:
我
们需要测试访问某件商品的详情页的cgi,这是商品id我们不能写死某一个具体的id号,所以我们就得动态的从搜索或者列表页去取,从body中利用
jmeter的正则提取器,把所有的商品id全给取出来,然后随机取一个放到我们事先定义好的变量:product_id(举个例子,不一定是这个名字)
中,在把这个id拼到url中……
你想想,这是这个功能是不是派上用场了!当然,提取id的script你可以自己写喽,哈哈!