关联的原理:
先来模拟一个场景,我去坐火车,坐火车要先检票,检票员核对火车票的时间、班次等信息正确后允许我坐火车。
过了几天,我又拿着一张票去坐火车,检票员再一次核对火车票信息,发现这张票过期了,肯定不让我坐了。那我怎么才能坐火车呢?我先看看旁边那哥们的火车票上的信息,然后把自己的查票涂改成和他一模一样再去坐火车。
在我们录制测试脚本时也经常会遇到这样的情况:录制的时候,服务器会给一个唯一的认证码来进行操作,当再次回放脚本的时候服务器又会给一个全新的认证码,而脚本录制是死的,还是拿老的认证码提交,从而导致脚本执行时失败。
——————————————————————————————————————————————
一、自动关联
在录制脚本之后打开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个用户同时修改或同时删除一条记录。
先来模拟一个场景,我去坐火车,坐火车要先检票,检票员核对火车票的时间、班次等信息正确后允许我坐火车。
过了几天,我又拿着一张票去坐火车,检票员再一次核对火车票信息,发现这张票过期了,肯定不让我坐了。那我怎么才能坐火车呢?我先看看旁边那哥们的火车票上的信息,然后把自己的查票涂改成和他一模一样再去坐火车。
在我们录制测试脚本时也经常会遇到这样的情况:录制的时候,服务器会给一个唯一的认证码来进行操作,当再次回放脚本的时候服务器又会给一个全新的认证码,而脚本录制是死的,还是拿老的认证码提交,从而导致脚本执行时失败。
为了确保脚本回放的成功,我们需要获得服务器每次返回的动态的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个用户同时修改或同时删除一条记录。