所谓关联,多大数是通过相应信息抓取部分信息,例如hidden或session等。
在jmeter中要使用关联,分为2步:
Step 1. 在Sampler请求下添加正则表达式,获得信息,Add > Post Processors>Regular Expression Extractor;
1.1绝大多数我们需要截取部分信息,可以通过查看源代码,找到需要的代码,然后通过正则处理,下面举一个例子:
功能是提取userSession中的值
1.2有时候,我们需要提取所有的响应信息,可采用下面的正则:
Step2. 添加PostProcessers,选择BeanShell PostProcessor,继而进一步操作。
在BeanShell中我们可以使用java代码处理正则提取出来的内容,一般的步骤为:接收正则表达提取的值,如果这个值需要作为之后Sampler的参数使用,我们还要将它保存为变量,方便以后调用。
继续以第一个例子中的userSession来说明:
由于在登录url中post需要提交session,所以我保存为变量Session,下面是登录url的调用Session值。
如果我们需要将正则抓取的内容打印到本地文档中,则可以在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,这个路径可自行设定。保存到文件中,可以用于分析统计。
转载于:https://blog.51cto.com/6218759/1766779