关联是数字几 关联是什么

所谓的关联就是把脚本中某些写死的数据转变成动态的数据 。举一个常见的例子 , 前面提到有些比较智能的服务器在每个浏览器第一次跟它要数据时 , 都会在数据中夹带一个唯一的标识码 , 然后就会利用这个标识码来辨识发出请求申请的是不是同一个浏览器 。一般称这个标识码为Session ID 。对于每个新的交易 , 服务器都会产生新的Session ID给浏览器 。这也就是为什么执行脚本会失败的原因 。因为VuGen还是用旧的Session ID向服务器要数据 , 服务器会发现这个S百思特网ession ID已经失效或者它根本不能识别这个Session ID , 当然就不会传送正确的网页数据给VuGen了 。图1所示说明了这样的情形 。
当录制脚本时 , 浏览器送出网页A的请求 , 服务器将网页A的内容传送给浏览器 , 并且夹带了一个ID=123的数据 , 当浏览器再送出网页B的请求时 , 这百思特网时就要用到ID=123的数据 , 服务器才会认为这是合法的请求 , 并且把网页B的内容送回给浏览器 。
在执行脚本时会发生什么状况呢?浏览器再送出网页B的请求时 , 用的还是当初录制的ID=123的数据 , 而不是用服务器新给的ID=456 , 整个脚本的执行就会失败 。
图1 浏览器与网站服务器的正常和异常会话过程
针对这种非常智能服务器 , 百思特网必须想办法找出这个Session ID到底是什么、位于何处 , 然后把它提取出来 , 放到某个参数中 , 并且替换脚本中用到Session ID的部分 , 这样就可以成功骗过服务器 , 正确地完成整个会话了 。
上面介绍了什么是关联 , 并且给大家讲解了一个实例 , 那么结合LoadRunner的应用 , 我们如何知道何时应该应用关联呢?通常情况下 , 如果脚本需要关联 , 在还没做关联之前是不会执行通过的 , 但在LoadRunner中并没有任何特定的错误消息和关联相关 。
那么 , 我们为什么要使用关联 , 使用关联又可以给我们带来哪些方便呢?
【关联是数字几 关联是什么】 首先 , 它可以生成动态的数据 , 前面已经讲过一个会话的例子 , 我们知道应用固定的数值是骗不过智能的服务器的 , 如果将数据变成动态数据这个问题就解决了 。其次 , 我们可以将这些冗长的数据给参数化 , 通过应用关联技术 , 可以有效减少代码的大小 , 这样不仅代码量会减少 , 脚本层次看起来也会更加清晰、明了 。

    推荐阅读