Jmeter使用BeanShell进行关联

所谓关联,多大数是通过相应信息抓取部分信息,例如hiddensession等。

jmeter中要使用关联,分为2步:

 

Step 1. Sampler请求下添加正则表达式,获得信息,Add > Post Processors>Regular Expression Extractor;

Jmeter使用BeanShell进行关联

 

1.1绝大多数我们需要截取部分信息,可以通过查看源代码,找到需要的代码,然后通过正则处理,下面举一个例子:

 

功能是提取userSession中的值

Jmeter使用BeanShell进行关联

 

1.2有时候,我们需要提取所有的响应信息,可采用下面的正则:

Jmeter使用BeanShell进行关联

 

Step2. 添加PostProcessers,选择BeanShell PostProcessor,继而进一步操作。

 Jmeter使用BeanShell进行关联

 

BeanShell中我们可以使用java代码处理正则提取出来的内容,一般的步骤为:接收正则表达提取的值,如果这个值需要作为之后Sampler的参数使用,我们还要将它保存为变量,方便以后调用。

继续以第一个例子中的userSession来说明:

Jmeter使用BeanShell进行关联

 

由于在登录urlpost需要提交session,所以我保存为变量Session,下面是登录url的调用Session值。

Jmeter使用BeanShell进行关联

如果我们需要将正则抓取的内容打印到本地文档中,则可以在BeanShell PostProcesser中加入如下的代码:

import java.io.*;

String value = bsh.args[0]; 

print(value);

File f= new File(“D:”+File.separator+”log.txt”); 

FileWriter w = new FileWriter(f,true);

w.write(value+”/n”);

w.close();

value接收参数值,print是将参数打印到命令行里,本地文件我使用的是D:/log.txt,这个路径可自行设定。保存到文件中,可以用于分析统计。

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/193582.html

(0)
上一篇 2021年11月15日
下一篇 2021年11月15日

相关推荐

发表回复

登录后才能评论