关联:
 
关联与参数化的区别:

①数据处理的方式不同

    参数化的数据是由客户端向服务器提交的,而关联是需要获取服务器返回给客户端的数据。在参数化时候,参数化的数据会通过web_submit_data提交到服务器,关联的数据是从服务器返回给客户端的,是提交请求的一组验证消息,所以处理关联数据一定要在服务器端返回的信息中获取。

 

②处理的数据是否确定

    参数化的数据是测试工程师已知的,即测试工程师知道需要使用什么数据进行参数化,以满足事务的需要,具体使用什么数据进行参数化,这取决于事务的需要;而对需要关联的数据的内容是未知的,所以只能通过左右边界值来确定。参数化的数据时静态的,而关联的数据是动态的。

 
 
 
 
 
录制
http://127.0.0.1:1080/WebTours/
1,
2,
3,
 
 
webtours的默认用户名和密码:
1、用户名:joe,密码:young
2、用户名:jojo,密码:bean
 
userSession每次的值不一样,所以需要设置一个关联,取出这个值供后续使用
 
第一步:
badboy录制webtours里用户登录的脚本
第二步:jmeter导入脚本
第三步:回放脚本
             找到userSession响应的而地方,(name="userSession" value="126940.595949777zfcQfAzpQAtVzzzHDQVHHpAtVtcf"/>)
             后面要用真个写正则表达式
 
第四步:
添加后置处理器--正则提取器
第五步:
       填写正则表达式
       name="userSession" value="(.+?)"/>
       $1$
也可以写多个分组:
       name="(.*?)" value="(.+?)"/>
       $1$,$2$
 
 
第六步:
     添加debug sampler,查看中间变量
 
 
第七步:
       运行----查看打印的中间变量
       userid_g表示匹配到的分组
 
模板:代表从正则表达式结果引用的样式,其实结果是一组,而不是一个。$0$代表这一组结果的全部,$1$代表这一组结果的第1个,以此类推;$1$$2$代表该正则表达式一组结果中的第1个和第2个,俩结果挨在一起中间没有间隔;$3$,$4$代表该正则表达式一组结果中的第3个和第4个,俩结果间有一个逗号相连。
匹配数字:0代表正则表达式结果组中随机,1代表全部。
缺省值:当引用不对时显示传递的信息,通畅写一个ERROR。
        最后,根据上面的说明,完成配置,然后可以先添加一个监视器(查看结果树),检查是否取到了对应的值;提取到的参数,调用时用${sessionid_1},${sessionid_2}...,如果想要得到匹配出的参数的个数,${sessionid_matchNr}。
 
说明:
        后置处理器:在请求结束或者返回响应结果时发挥作用
        正则表达式提取器:允许用户从服务器的响应中通过使用perl的正则表达式提取值。该元素会作用在指定范围取样器,用正则表达式提取所需值,生成模板字符串,并将结果存储到给定的变量名中。
APPly to:作用范围(返回内容的断言范围)
         Main sample and sub-samples:作用于父节点的取样器及对应子节点的取样器
         Main sample only:仅作用于父节点的取样器
         Sub-samples only:仅作用于子节点的取样器
         JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称)
要检查的响应字段:需要检查的响应报文的范围
         主体:响应报文的主体
         Body(unescaped):主体,响应的主体内容且替换了所有的html转义符,注意html转义符处理时不考虑上下文,因此可能有不正确的转换,不太建议使用
         Body as a Document:从不同类型的文件中提取文本,注意这个选项比较影响性能
         Response Headers:响应信息头
         Request Headers:请求信息头
         URL:统一资源定位符,即Internet上用来描述信息资源的字符串
         响应代码:响应状态码,比如200、404等
 
         响应信息:响应信息
posted on 2019-11-22 09:57  腿短毛不多  阅读(136)  评论(0编辑  收藏  举报