LR-事务

一、对事务的理解

在LR中什么是事务,事务是记录从客户端到服务器端,服务器端返回到客户端应答的时间,可以反映出一个操作所用的时间。那么事务的时间主要是由响应时间、事务自身时间、浪费时间(wasted time)组成。

二、事务响应时间的组成
•网络时间(web server和APP server时间)
•服务器处理时间(web服务器、app服务器、数据库服务器的处理时间)
•网络延迟时间(前端Network、后端服务)

前端network延迟时间包含:
•DNS Lookup:DNS域名解析服务,是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。上网时输入的网址,是通过域名解析系统解析找到了相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。
•Time to connect
•Time to first buffer:第一次缓冲时间,成功收到从Web服务器返回的第一次缓冲之前的这一段时间内的每个页面组件的相关服务器/网路时间
•Network time
•Download time
•SSL handshake:SSL握手协议,建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
•FTP authentication
•Client time
•Error time
•网络延迟

后端服务延迟时间主要有Web server、APP server、Database server组成:
•Web server:
1.servlet time
2.method time
3.静态动态压缩
•APP server
1.EJB time
2.Methond time
3.JNDI Lookup
•Database server
1.JDBC time
2.Connect time
3.Execute time

以上事务响应时间摘抄自《性能测试进阶指南LR11》,其中网络延迟时间自己的理解,前端应该是用户在进行操作,如输入了URL地址从浏览器到网络的时间。

三、事务自身时间(插入事务即使事务中没有操作,也需要时间)

事务的时间一般在1/100秒左右,因此可以忽略

四、浪费时间(Wasted Time)

浪费时间是事务中应该扣除的由于其他原因导致的时间浪费,如:执行一个计算密钥的程序,会浪费很多时间,这时候需要通过计算出wasted time来过滤事务时间

五、事务函数
•lr_start_transaction("事务名称"):事务开始
•lr_end_transaction("事务名称","事务状态"):事务结束,结束状态LR_AUTO,LR_PASS,LR_FAIL,LR_STOP
•lr_start_timer():与lr_end_timer()联合使用可以得到程序运行的时间
•lr_end_timer():与lr_start_timer()联合使用可以得到程序运行的时间
•lr_get_transaction_duration(const char *transaction):返回事件执行到此所用的时间

例子:

lr_start_transaction("事务名称")

timer=lr_start_timer()

//所需计算时间的程序

(略)

trans_time=lr_get_transaction_duration(”事务名称");//返回事件执行到此处所用的时间

wasted_timer=lr_end_timer(timer);// lr_start_timer() 执行到 lr_start_end() 所用时间

lr_end_transaction("事务名称","事务状态")

六、手工事务

对于自动结束状态的事务来说(LR_AUTO),只要服务器给用户返回了信息,就会认为事务是通过的。因此需要手工事务来进行判断

例:如用户注册,已经注册过的用户通过LR_AUTO来进行判断,最后依然会显示事务成功

可以用web_reg_find()函数来对登陆失败或者登陆成功以后页面进行文字的查找,对事务进行判断

Login

{

web_reg_find("Search=Body","SaveCount=regst","Text=登陆成功‘,LAST);

lr_start_transaction("regstnewuser");

//录制的登陆代码

(略)

if(aton(lr_eval_string("{regst}"))>=1)

  lr_end_transaction("regstnewuser",LR_PASS);

else

  lr_end_transaction("regstnewuser",LR_FAIL);

}
时间: 2024-10-16 20:56:13

LR-事务的相关文章

lr事务

事务:transaction(性能里面的定义:客户机对服务器发送请求,服务器做出反应的过程) 用于模拟用户的一个相对完整的业务操作过程:如登录,查询,交易等操作(每次http请求不会用来作为一个事务) 方式1.录制过程中,可操作 方式2.以loadrunner 自带WebTours为例, 操作步骤: 1.打WebTours首页 2.点击事务开始按钮,输入“登录” 3.输入用户名密码点击登录按钮 4.点击事务结束按钮,点击确定.(注:事务的开始与结束的名称一定要一致) 方式3.等正常录制结束后,手

对LR analysis的平均事务响应时间和summary中时间值不同的解释

最近在做性能测试对LR结果分析时,又碰到了关于summary里与平均事务响应时间中各交易的响应时间值不同的问题.在此做个记录. 若交易中设置了思考时间,分析时需要注意查看是否过滤思考时间. 设置是否包含的方法:view->summary filter中,有是否包含思考时间的过滤条件(LR11中是最后一项). summary中:默认是根据整个场景的运行时间来进行采样的.若需要修改可在view->summary filter中,设置场景的执行时间. 平均事务响应时间中:LR根据场景运行时间等因素,

性能基础知识学习之四---事务,思考时间,检查点,集合点和手写lr接口

一.事物,思考时间,检查点,集合点 1.事务 lr里面的事物是lr运行脚本的基础.lr里面 要测试的三个维度都以事物为单位,所以一定要有事物.事务的概念贯穿loadrunner的使用,比如我们说的响应时间其实是事务的的相应时间;tps,每秒中处理的事务数.当脚本跑完之后没有响应时间,导致此种情况之一就是没定义事务. 而在录脚本时: 1.在录脚本是要添加事务 2.添加事务是为了准确的测出相应请求的响应时间,尽量保证每一个事务中只有一个请求.但当录制脚本的时候,在录制HTML脚本时,由于一个HTML

转载-对LR analysis的平均事务响应时间和summary里的时间值的不同的解释

这里我已经忽略了思考时间. 看这里的liboys事务的值.先记住它们. 再看这个图中的liboys事务的时间值,再记住它们. 看看这个average transaction response time的采样时间: granularity 2秒.现在我改为:115秒(整个场景的运行时间). 再来看average transaction response time图. 这里,我再把min,ave,max列显示出来 是不是graph的最大,最小,平均,都是一样了? 是不是和Summary里的平均值也是

loadrunner关联和事务

1.关联 不关联,录制没有问题,回放时可能会出错. 排除字符限制,输入因素,如果自己手动操作网页时不会报错,回放时报错,那么可以肯定,有数据需要使用关联. 如果录制没有错误,且对脚本没有进行任何修改,自动化时出错,那就应该去关联. web关联主要使用,web_reg_param_ex这个函数,其他几个类似函数也可使用. 关联主要指从服务器返回的信息,这个信息主要用于验证或者状态记录,需要被关联的数据是动态变化的. 2.事务 事务在lr中可以手工输入,也可以自动插入 lr_start_transa

LR接口测试---Java Vuser之jdbc调试前

在eclipse下编写好的代码: 1 import lrapi.lr; 2 import java.sql.Connection; 3 import java.sql.DriverManager; 4 import java.sql.PreparedStatement; 5 import java.sql.ResultSet; 6 7 public class Actions { 8 //定义用户名,密码,连接的URL 9 String username = "root"; 10 St

LR常见问题整理

1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. LR11 无法弹出ie浏览器,或者ie已停止工作问题的解决方法汇总 . 1)系统属性,高级选项卡下,性能里面,单击设置按钮,修改数据执行保护为“只为关键windows程序和服务启用数据执行保护”,然后,重启: 上述方法我采用了第一个,重启后问题解决. 2)若果被测试系统在本机上,访问地址为:http://127.0.0.1:

JMeter:事务等

1.断言结果 如果用了检查点,并且需要知道请求结果正确率的时候,使用断言结果,查询结果树很耗性能,在正式压测的时候,会禁用. 2.思考时间 3.集合点 4.事务 5.查看聚合报告 执行请求: 单个请求相当于lr中的事务,lr中的事务是计时时间,在图中,单个请求里边有请求计时 事务控制器:可以对多个请求计时 字段说明: Average → 平均响应时间 事务控制器的平均响应时间=request1+request2 总体时间=(request1+request2+事务控制器)/3 #Samples

LR实战之Discuz开源论坛——网页细分图结果分析(Web Page Diagnostics)

续LR实战之Discuz开源论坛项目,之前一直是创建虚拟用户脚本(Virtual User Generator)和场景(Controller),现在,终于到了LoadRunner性能测试结果分析(Analysis)这部分了. LoadRunner结果分析图表功能中最重要图表分析之一,就是网页诊断细分图,在Controller场景设计运行之前,需要在菜单栏中设置启用网页诊断功能(诊断-网页诊断-启动),如图: 网页细分图,是显示每个页面及其组件的相关下载时间和大小,主要用来评估页面内容是否影响事务

用LR录制文件下载并随机产生文件名

用LR录制文件下载并随机产生文件名 {H.IY:X.Tn0 8h&~-D|6fV0Action()51Testing软件测试网GE$nV}s,R{51Testing软件测试网 }9sUS'q          int flen;        //定义一个整型变量保存获得文件的大小51Testing软件测试网Vf0U.JK m    a[email protected]%xT?U0          long filedes;    //保存文件句柄"fY*e gvr$~P$}0