关联

本文介绍负载测试过程中如何处理动态数据的问题,通过自动、手动及预置关联方式确保脚本的准确性,重点讲解登录操作、数据修改与删除等场景。
关联的原理:
      先来模拟一个场景,我去坐火车,坐火车要先检票,检票员核对火车票的时间、班次等信息正确后允许我坐火车。
  过了几天,我又拿着一张票去坐火车,检票员再一次核对火车票信息,发现这张票过期了,肯定不让我坐了。那我怎么才能坐火车呢?我先看看旁边那哥们的火车票上的信息,然后把自己的查票涂改成和他一模一样再去坐火车。

  在我们录制测试脚本时也经常会遇到这样的情况:录制的时候,服务器会给一个唯一的认证码来进行操作,当再次回放脚本的时候服务器又会给一个全新的认证码,而脚本录制是死的,还是拿老的认证码提交,从而导致脚本执行时失败。

为了确保脚本回放的成功,我们需要获得服务器每次返回的动态的sesiionID,再将这个动态数据发回给服务器。而关联能够帮助我们将服务器返回的数据进行处理并保存为参数。


下面详细来分析一下录制与回放的过程

录制过程:

 

1、输入用户名密码登录

2、服务器端返回一个sesiionID@@@12345

3、客户端拿着获得sesiionID@@@12345进一步请求服务器信息。

4、服务器返回客户端想要的信息

回放过程:

1、输入用户名密码登录

2、客户端返回新的sesiionID@@@23456

3、因为脚本中的sesiionID@@@12345 是写死的,所以我们会依然拿着老的sesiionID@@@12345去向服务器请求信息

4、服务器你经过验证发现你的sesiionID@@@12345 是错误的。

 

 

为了确保脚本回放的成功,我们需要获得服务器每次返回的动态的sesiionID,再将这个动态数据发回给服务器。而关联能够帮助我们将服务器返回的数据进行处理并保存为参数。


——————————————————————————————————————————————
一、自动关联
      在录制脚本之后打开recording Options 窗口,点击correlation标签页。确保Enable correlation during recording 选项处于勾选状态。
      录制完毕后,在Vuser窗口下点击scan script for correlations(快捷键ctrl + F8 )进行关联,最好一项一项进行关联。
——————————————————————————————————————————————
二、手动关联
        1:录制测试脚本,录制二遍
        2:使用WinDiff工具找出两次脚本的不同,判断是否需要进行关联(Tools下的 Compare with Vuser进行2个相同操作的脚本对比)
        3:确定插入关联的位置
        4:在VIEW TREE中使用web_reg_save_param函数手动建立关联
        5:将脚本中有用到关联的数据,用参数代替
    6:验证关联的正确性
——————————————————————————————————————————————
三、预置关联
在录制前,制定出关联的规则,但同样要找出关联的对象,我们可以通过录制两个相同的脚本,利用Uedit32的比较功能找出脚本中不同的地方,然后利用httpwatchstudio找出变化的值,通过Recording Options 创建关联规则,然后进行录制。
——————————————————————————————————————————————
常见的需要关联的场景
         1.登录操作。
         2.先查后修改,先查后删除。
         3.并发控制:防止2个用户同时修改或同时删除一条记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值