loadrnner脚本关联之手动关联

来源:互联网 发布:windows server cd 2 编辑:程序博客网 时间:2024/05/29 11:48

1、为什么要关联

当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本。在VuGen的RecordingLog中,您可以找到浏览器与服务器之间所有的对话,包含通讯内容、日期、时间、浏览器的请求、服务器的回应内容等等。脚本和RecordingLog最大的差别在于,脚本只记录了client端要对server端所说的话,而RecordingLog则是完整纪录二者的对话。

当执行脚本时,您可以把VuGen想象成是一个演员,它伪装成浏览器,然后根据脚本,把当初真的浏览器所说过的话,再对网站服务器重新说一遍,VuGen企图骗过服务器,让服务器以为它就是当初的浏览器,然后把网站内容传送给VuGen。

所以记录在脚本中要跟服务器所说的话,完全与当初录制时所说的一样,是写死的(hard-coded)。这样的作法在遇到有些比较聪明的服务器时,还是会失效。这时就需要透过「关联(correlation)」的做法来让VuGen可以再次成功地骗过服务器。

何谓关联(correlation)?

所谓的关联(correlation)就是把脚本中某些写死的(hard-coded)资料,转变成是来自服务器的、动态的、每次都不一样的资料。


举一个常见的例子,刚刚提到有些比较聪明的服务器,这些服务器在每个浏览器第一次跟它要资料时,都会在资料中夹带一个唯一的辨识码,接下来就会利用这个辨识码来辨识跟它要资料的是不是同一个浏览器。一般称这个辨识码为
SessionID。对于每个新的交易,服务器都会产生新的SessionID给浏览器。这也就是为什么执行脚本会失败的原因,因为VuGen还是用旧的SessionID向服务器要资料,服务器会发现这个SessionID是失效的或是它根本不认识这个SessionID,当然就不会传送正确的网页资料给VuGen了。


0 0
原创粉丝点击