lr概念

一、TPS:Trasaction per second也就是事务数/秒。它是 软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求而后服务器作出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息来估计得分。客户机使用加权协函数平均方法来计算客户机的得分,测试软件就是利用客户机的这些信息使用加权协函数平均方法来计算服务器端的总体TPS得分。通常来讲系统的TPS取决于系统事务最低处理能力的模块的TPS,经验值10-100
二、HPS:Hit per second也就是点击数/秒,指的是一秒钟的时间内用户对WEB页面的连接、提交按钮等点击的总和。通常与TPS成正比关系,是衡量B/S系统的一个主要指标
三、Throughput/s:吞吐率,指的是每秒系统处理的客户的请求的数量,也能够理解为单位时间内客户接收到的服务的反馈量
分析:
一、TPS标准差/TPS Average>8%,或者<2%则系统存在性能瓶颈
二、当增大系统的压力(或增长并发用户数)时,吞吐率和TPS的变化曲线呈正比变化,则系统基本稳定
三、若压力增大时,吞吐率的曲线增长到必定程度后出现变化缓慢,甚至平坦,同时TPS也趋于平坦,查看系统资源使用,若是资源使用率比较高,则说明服务器硬件资源存在问题,须要拓展硬件或者优化应用。反之,则说明服务器硬件资源不存在问题,查看网络流量,估计网络带宽存在问题。
四、点击率/TPS曲线出现变化缓慢或者平坦,极可能是服务器响应时间增长,观察服务器资源使用状况,肯定是不是服务器问题或者应用问题
======================================================================================
think_time:
========================================================================
自动关联:

Loadrunner关联(一)何时须要作关联javascript

1.关联的含义php

关联(correlation):在脚本回放过程当中,客户端发出请求,经过关联函数所定义的左右边界值(也就是关联规则),在服务器所响应的内容中查找,获得相应的值,已变量的形式替换录制时的静态值,从而向服务器发出正确的请求,这种动态得到服务器响应内容的方法被称做关联。html

其实关联也属于一同特殊的参数化,只是与通常的参数化有些不一样java

通常的参数化的参数来源于一个文件、一个定义的table、经过sql写的一个结果集等,但关联所得到的参数是服务器响应请求所返回的一个符合条件的、动态的值web

2.何时须要作关联sql

要想弄清这个问题,咱们首先要知道客户端与服务器端的请求与响应的过程服务器

拿一个登陆的过程咱们来看一下:网络

 

 

过程说明:session

客户端发出得到登陆页面的请求并发

服务器端获得该请求后,返回登陆页面,同时动态生成一个Session Id

当用户输入用户名密码,请求登陆时,该Session Id同时被发送到服务器端

若是该Session Id在当前会话中有效,那么返回登陆成功的页面,若是不正确则登陆失败

在第一次录制过程当中loadrunner把这个值记录了下来,写到了脚本中,但再次回放时,客户端发出一样的请求,而服务器端再一次动态的生成了Session Id,此时客户端发出的请求就是错误的,为了得到这个动态的Session Id咱们这里用到了关联。

因此咱们得出结论:

当客户端的某个请求是随着服务器端的相应而动态变化的时候,咱们就须要用到关联

固然咱们在录制脚本时应该对测试的项目进行适当的了解,知道哪些请求须要用到服务器响应的动态值,若是咱们不明确那些值须要作关联的话,咱们也能够将脚本录制两遍,经过对比脚本的方法来查找须要关联的部分,但并非说两次录制的全部不一样点都须要关联,这个要具体状况具体分析

关于自动关联和手动关联我会在下篇日志中描述

 

Loadrunner关联(二)自动关联

上一篇日志介绍了关联的含义及什么样的状况下须要用到关联

此次咱们介绍一下loadrunner中的自动关联

自动关联包含两种机制:

一种是loadrunner经过对比录制和回放时服务器响应的不一样,而提示用户是否进行关联,用户可本身建立关联规则,这个功能能够方便的使咱们得到须要关联的部分,但同时也存在必定的问题,如:自动关联所检测到的关联点不必定真的须要进行关联,这要咱们更具实际状况进行判断;有些须要关联的动态数据自动关联没法找到,这是就须要作手动关联

另外一种是loadrunner自带的自动关联规则,在录制脚本时,会根据这些规则自动建立关联

自动关联的步骤以下:

1.开启自动关联选项

刚才提到的两种关联机制,若是用户想使用loadrunner自带的关联规则建立关联,那么须要在Recording Options>Internet Protocol>Correlation】中启用关联规则,选中“Enable correlation during recording”,当录制这些应用系统的脚本时,VuGen会在脚本中自动创建关联。也能够在【Recording Options>Internet Protocol>Correlation】中添加关联规则,达到自动关联的目的。

若是须要在回放脚本时,loadrunner自动检测须要关联的部分,那么须要在【Tools>general options>Correlation】中选中“save correlation information during replay”和“show scan for correlations popup after replay of vuser”,当回放玩脚本后,会弹出Scan action for correlation窗口,进行关联点的搜索

 

2.录制脚本

录制脚本的过程在这里就很少说了

 

3.回放脚本

若是录制的脚本存在须要作关联的部分,那么在回放脚本时会出现错误

 

4.系统自动弹出检测关联对话框,或手动启动关联检测对话框

若是选择了Tools>general options>Correlation】中的“save correlation information during replay”和“show scan for correlations popup after replay of vuser”,那么在回放脚本后会自动弹出“Scan action for correlation”窗口,点击“yes”进行自动查找

若是没有选择上述设置,那么也能够按CTRL+F8启动关联自动搜索

 

5.查看系统检测出的关联点进行关联设置

若是在录制和回放中存在差别,loadrunner会在“Correlation Results”中列出须要作关联的内容,用鼠标点击一条须要作关联的内容,点击“Create Rule”,系统会显示得到当前数据的规则,点击“yes”,完成规则的建立,同时查看脚本中增长了一个web_reg_save_param函数

也能够点击Correlate】按钮建立关联,一笔一笔作,或是按下【Correlate All】让VuGen一次就对全部的数据创建关联。

注意:因为Correlation Studio会找出全部有变更的数据,可是并非全部的数据都须要作关联,因此不建议您直接用【Correlate All】。

 

6.回放脚本检查关联的正确性

建立好关联后,回放脚本检查关联的正确性

 

Loadrunner关联(三)手动关联

原创文章,转载注明出处:http://www.51testing.com/?41972

手动关联的过程大体以下:

第一步:录制测试脚本,录制二遍

第二步:使用WinDiff工具找出两次脚本的不一样,判断是否须要进行关联

第三步:肯定插入关联的位置
G$eAB0L216511
第四步:在VIEW TREE中使用web_reg_save_param函数手动创建关联 51Testing软件测试网0CMU {K8n
第五步:将脚本中有用到关联的数据,用参数代替

第六步:验证关联的正确性

 

下面详细介绍:

第一步:

录制测试脚本,录制二遍

这一步就不用多说了,相同的操做,录制两份,分别保存

第二步:

使用WinDiff工具协助找出须要关联的数据
6Jihe!LY*V.X2165111.
在第二份脚本中,点选VuGen的【Tools>Compare with Vuser…】,并选择第一份脚本。
51Testing软件测试网7m gr/Q h#H;o
2.
接着WinDiff会开启,同时显示二份脚本,并显示有差别的地方。WinDiff会以一整行黄色标示有差别的脚本,而且以红色的字体显示真正差别的文字。(假如没看到红色字体,请点选【Options>View>Show Inline Differences】)。

查看二份脚本中差别的部份,每个差别均可能是须要作关联的地方。

注意:lr_thik_time部分的差别能够忽略

找到不一样的部分后,复制,而后打开Recording Log或是Generation Log,按Ctrl+F,在查找窗口中粘贴差别部分的内容,点击查找找到后,查看该部分的信息,确认是客户端的请求信息仍是服务器回应的信息

若是出如今$$$$$$ Request Header For Transaction With Id 3 Ended $$$$$$这个部分,那证实是客户端发出的请求,这里是不须要作关联的

通常作的关联都是出如今****** Response Header For Transaction With Id 7 ************ Response Body For Transaction With Id 7 ******中的部分。

在找到这个信息后,须要记录以下信息:

a.记录这个不一样数据以前的内容和以后的内容

b.记录这个不一样数据出现的位置,是Header仍是Body

 

第三步:

确认插入关联的位置

咱们在日志中找到了两次脚本的不一样点的位置,根据这个位置,咱们再肯定是在哪一个请求以后产生的,也就是说要定位发生不一样点的response是由哪一个request产生的,找到了这个请求的函数位置,咱们就知道要往哪里作关联了

通常状况下关联函数写到发出请求的函数以前就能够了

 

第四步:

插入关联函数

在插入关联函数前,咱们先介绍关联函数web_reg_save_param

  一个web_reg_save_param函数的例子:

web_reg_save_param ("sessionid",

      "LB=Session_id:",

      "RB=;",

      "Search=Body",

      LAST);

在这里咱们只介绍几个经常使用参数的含义

语法:int web_reg_save_param(const char *ParamName, <list of Attributes>, LAST);

参数说明:

ParamName: 存放获得的动态内容的参数名称

list of Attributes: 其它属性,包括:Notfound, LB, RB, RelFrameID, Search, ORD, SaveOffset, Convert, SaveLen。属性值不分大小写

LB( Left Boundary ) : 返回信息的左边界字串。该属性必须有,而且区分大小写。

RB( Right Boundary ): 返回信息的右边界字串。该属性必须有,而且区分大小写。

Search : 返回信息的查找范围。能够是HeadersBodyNoresourceAll(缺省)。该属性质无关紧要。

 

那么如何插入该关联函数呢?

1.vugun切换到 view tree 模式下

2.在左边的列表中,找到在上一步发出请求的函数,点击“右键”

选择“insert before

3.在弹出的“add step”对话框的“find function”中输入“web_reg_save_param”,点击“ok

在“parameter name”中输入,关联函数的名称,这里最好有含义,“sessionid

在“left boundary”中输入,刚才记录下的不一样点字符串的左面的几个字符,定义左边界,Session_id:

在“right boundary”中输入,刚才记录下的不一样点字符串的右面的几个字符,定义右边界,;

在“search in ”中,选择“body

点击“ok

4.回到脚本编辑模式下,查看该函数插入是否正确

在发出请求的函数前应该看到:

web_reg_save_param ("sessionid",

      "LB=Session_id:",

      "RB=;",

      "Search=Body",

      LAST);

 

第五步:

将脚本中有用到关联的数据,用参数代替

 

 

如发出请求的参数以下,那么将原来服务器返回的动态值使用{ sessionid } 来替换:

 

  web_submit_form("login.php_2",

      "Snapshot=t2.inf",

      ITEMDATA,

      "Name=login", "Value=wangjin", ENDITEM,

      "Name=password", "Value=wangjin", ENDITEM,

        "Name=Session_id","Value={ sessionid } ", ENDITEM,

      "Name=Submit", "Value=Login", ENDITEM,

      EXTRARES,

      "URL=/media/images/border_bg_l.gif", ENDITEM,

      "URL=/media/images/header_bg.gif", ENDITEM,

      "URL=/media/images/th.gif", ENDITEM,

      LAST);

 

第六步:

验证关联的正确性

回放脚本,验证关联的正确性

===================================================================================== 
  Diagnostics使用介绍和分析诊断<HP 产品>
相关文章
相关标签/搜索