lordrunner事务是什么意思

lordrunner事务是什么意思,第1张

LoadRunner,是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找LoadRunner能够对整个企业架构进行测试。通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。LoadRunner是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并评估系统性能。

事务

事务又称为Transaction,在LoadRunner中的定义如下:An end-to-end(browser-to-browser) measurement of one or more user actions within action file。中文理解如下:事务(Transaction)是这样一个点,我们为了衡量某个action的性能,需要在action的开始和结束位置插入这样一个范围,这就定义了一个transaction。

事务的作用:LoadRunner运行到该事务的开始点时,LoadRunner就会开始计时,直到运行到该事务的结束点,计时结束。这个事务的运行时间在LoadRunner的运行结果中会有反映。通俗的讲LoadRunner中的事务就是一个计时标识,LoadRunner在运行过程中一旦发现事务的开始标识,就开始计时,一旦发现事务的结束表示,则计时结束,这个过程中得到的时间即为一个事务时间。通常事务时间所反映的是一个 *** 作过程的响应时间。

下面我们说说为什么在LoadRunner中使用事务。为什么使用事务的原因是多种多样的,总结下来如下五点所示:

1、事务是LoadRunner度量系统性能指标的唯一手段(没有事务则没有办法衡量系统的响应时间,也许有人说LoadRunner可以通过编程来计时得到,不错如果你编程能力够强是能够实现的,但肯定不如LoadRunner中的事务用的简单而且方便)

2、事务能够用于度量高风险业务流程的性能指标

3、事务能够度量在一组 *** 作中每一步的性能指标

4、通过事务计时实现了不同压力负载下的性能指标对比

5、通过事务计时可以帮助定位性能瓶颈

从性能测试的 角度出发,我们需要知道不同的 *** 作所花费的时间,这样我们就可以衡量不同的 *** 作对被测系统所造成的影响,那么我们如何知道不同的 *** 作所花费的时间,这就用 到了事务,我们在 *** 作之前插入一个事务开始标识,在 *** 作完成后插入一个事务结束表示,这样我们就知道了这个 *** 作所花费的时间。

一、Loadrunner中事务

LR度量的是客户端发送请求到服务器响应处理并返回的时间,看上去和响应时间没有差异,我在之前也都是这样认为的,但实质上事务和响应时间之间还是存在着一定的细微差异。

实际事务时间包括以下四个部分

第一部分:Wasted time,脚本录制过程中,自动插入所花费的时间;脚本录制后,手工编码输入执行所花费的时间。

第二部分:函数自身所消耗的时间,包括lr_start_transaction和lr_end_transaction

第三部分:Think Time,用于模拟用户思考的时间lr_think_time()

第四部分:响应时间 = 网络+服务器处理时间

注:在事务的时间计算中,会自动排除第一和第二种,第三部分是人为设置或是录制形成,只要做一下减法也可以排除,所以真正事务要度量的时间是第四部分,响应时间。

添加事务的方式

1、当对录制的脚本不是特别的熟悉时,可以选择录制时在工具栏添加事务,这样系统会在自动生成的脚本中插入事务函数

2、如果对脚本较为熟悉,可以选择在录制结束后添加事务

3、纯手工编码添加事务命令

补充:lr_end_transaction函数的int status有四种状态(根据状态去判断事务的执行情况)

LR_AUTO:自动根据规则来判断状态

LR_PASS:系统做了正确的事务,并且记录事务所执行的时间(响应时间)

LR_FAIL:事务失败,没有达到脚本应该有的效果(后期统计中将被独立统计)

LR_STOP:事务被停止

二、 Loadrunner中检查点

如何快速的知道一个脚本在回放时候是正确还是错误,在这里我们就要用到一个函数web_reg_find,通过它去设置检查点,自动在回放的脚本中搜索指定信息,如果找到则通过,如果找不到就是失败。

举个Demo,用LR自带的例子,在登录系统以后,设置检查点,查看系统会给出什么返回。

设置检查点的方式,在Page View视图中选择需要检查的文字,右键选择添加,如下:

如果页面中未出现检查点设置的文本或者图片,则出现错误信息

三、事务与检查点应运

首先录制一个登录的脚本,这里我们对业务熟悉,就直接使用手动插入事务的处理方法,通过鼠标右键,在需要插入事务的地方选择Insert->Start Transaction/End Transaction

插入事务后再次运行脚本,事务以Pass结束,持续时间为0.0556,浪费时间为0.0016s

说明:这里如果是录制时插入事务,那么生成的事务时间需要减去思考时间后,才是事务真正的响应时间。

在事务的脚本中,我们插入检查点,检查点插入的位置通常是放在事务的内部,这样便于理解检查点的作用,检查点函数自身消耗的时间会被事务自动排除。

如果脚本能正确进入Web Tour Welcome页面,那么执行成功,出现下面提示

【补充说明】:与事务相关的函数还包括以下五种:

lr_get_transaction_duration()//获得对应事务到达函数运行位置时持续的时间

lr_get_transaction_duration()//获得对应事务到达该函数运行位置时的waste时间

lr_get_transaction_duration()//为一个事务添加waste时间

lr_get_transaction_duration()//将一个事物暂停,该函数后面的 *** 作都不会被记入事务时间

lr_get_transaction_duration()//将暂停的事务恢复

loadrunner插入事物有2种方法 第一种比较简单,通过界面按钮即可增加 1、选择要插入的代码前,点击Insert进行选择start Transaction 2、在要结束的代码后面,点击Insert进行选择end Transaction


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11714299.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存