1、 什么地方需要使用关联
凡是脚本每次执行时都必须获取唯一标识的地方都需要关联,假如脚本需要关联,但是却不做关联是不会执行通过的,但是并没有任何特定的错误消息是和关联有关系的。比如当用户登录时,录制脚本的时候服务器会返回一个用户登录成功的SessionID,这个值是固定的写到脚本中,但是回放的时候由于该用户再次登录时,服务器会重新生成一个SessionID,但脚本中该值却没有获取到,仍然是上次的SessionID,就会导致该用户登录失败,但是执行的时候没有任何错误提示消息,需要我们在脚本中添加打印日志才能发现。
2、 关联函数说明
关联函数一般有以下三种,
1、web_reg_save_param;2、web_create_html_param;3、web_create_html_param_ex;
现只介绍第一种的使用方法,该函数的格式如下
web_reg_save_param("usersession",
"LB=name=userSession value=",
"RB=>",
"ORD=1",
LAST);
LB,RB是截取字符串的左右边界值,如果左右边界值中存在各种特殊字符,如双引号等,需要先用\进行转义.如果所截取的字符串的左右边界值比较唯一的话,可以直接引用上面的方式进行获取,可以不用设置别的属性了,最后的LAST是固定的.
3、 举例说明关联的使用
下面简单介绍一下自己在用户登录时使用关联的操作步骤
3.1 在进行录制脚本前,在Recording Options->HTTP Properties-->Correlation中勾选 Enable correlation during recording
3.2 录制脚本
录制的登录脚本如下:
画红框中Value就是用户登录后服务器返回的sessionID,这个值应该是动态变化的,不能在脚本中写上固定值,所以必须要进行关联。
3.3 如何确定需要关联
根据经验,一般需要关联的值会在HTML的hidden标签中出现。比如我们在Gereneration Log标签页中搜索 uuserSesson
搜索结果如下,搜索的结果值正好与前面的脚本一致,而且type=hidden,所以该处需要关联
3.4 关联函数所放的位置
因为这次我们是要对用户登录设置关联,所以关联函数要放在打开见面之前,如下图所示,并根据Gereneration Log找到uuserSesson的左右边界。
3.5登录中设置关联
关联函数设置好后,也就是启用了关联后,需要在登录的脚本中设置关联参数。
如下图所示,将原来的固定值更换成关联参数,完成此步就说明关联设置好了。