51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 6158|回复: 23
打印 上一主题 下一主题

[原创] LoadRunner 中事务

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-11-20 15:39:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
LoadRunner 中事务就是一组函数,事务本身没有一个特定的意义,
这一组函数是:lr_start_transaction("test");和lr_end_transaction("test", LR_AUTO);这一组函数必须同时出现,
如果出现其中一个,
比如只有开始函数lr_start_transaction("test");没有lr_end_transaction("test", LR_AUTO);函数系统运行后会报错:Error: Vuser started transaction "test", but did not reached a corresponding end transaction statement. The transaction ended automatically with status 'fail'.
同样的如果只有结束事务没有开始的事务函数报以下错误:Error: Failed to end Transaction "test" (by name). Please check that you made a call to start transaction operation.

跟事务相关的几个指标:

1)  TPS 每秒钟事务处理数,是指单位时间对于特定事务来说能够处理的个数;

2)  Response time 响应时间,这个也是根据不同事务统计的一个时间,是指完整这个事务所花费的时间。

    总结:在不同的工具中对于事务(transaction)的概念不是完全一样的,在LoadRunner中用户可以根据自己的要求来定义事务包含的内容,可以是一个交易也可以包含几个交易,同时对于事务可以对应相应得几个指标,比如TPS、事务平均响应时间等等
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-11-20 16:07:09 | 只看该作者

为什么要插入事务呢

事务又称为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、通过事务计时可以帮助定位性能瓶颈;

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

接着我们说说如何使用事务,以及事务应该应用在什么地方。

使用事务有如下几种方法:

1、方法一:脚本生成后,手动插入事务;方法:在LoadRunner脚本中点击鼠标:右键,选择“Insert”→“Start Transaction”弹出一个对话框,输入一个事务名字(注:事务名字可以为中文、可以为英文,也可以中英文混合,但推荐的做法是起一个容易理解的名称,例如想知道登录所花费的时间,则插入事务可以命名为login或登录);“Start Transaction”插入完成后,还需要插入一个“End Transaction”,用以标识事务结束;注:Start Transaction和End Transaction需要成对出现,如果仅插入Start Transaction则脚本编译会提示错误;此外,还可以通过LoadRunner vugen中的“Insert”菜单插入Start Transaction和End Transaction;

2、方法二:在脚本录制过程中插入Start Transaction和End Transaction;在脚本录制过程中,通过录制工具条上的Start Transaction和End Transaction图标插入事务,如下图所示:



3、方法三:通过Run-time Settings中的Automatic Transactions自动生成事务,如下图所示:



注:该种方法插入的事务仅能在LoadRunner Controller中的图表和报告中看到在脚本的log中看不到。

以上为事务的插入方法,无论是那种方法,插入事务后,我们都可以在脚本中看到如下两个函数:lr_start_transaction("事务")和 lr_end_transaction("事务", LR_AUTO),前一个为事务开始函数,后一个为事务结束函数,括号中引号中的内容为事务名称。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-11-29 14:49:01 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2009-11-30 10:18:35 | 只看该作者
讲的很好
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2009-11-30 10:59:28 | 只看该作者
不错,很详细  。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2010-4-6 14:25:18 | 只看该作者
good!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2010-4-6 18:35:24 | 只看该作者

很详细

很详细,把事务的作用,以及具体的操作都列出来了。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2010-5-17 10:09:18 | 只看该作者
很好~~正好解决了我的问题,太谢谢了
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2010-5-17 13:24:19 | 只看该作者
顶~
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2010-5-17 20:09:18 | 只看该作者
Good,把事务给讲的很仔细,适合我这样初学的。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    11#
    发表于 2010-5-17 20:39:18 | 只看该作者
    一大篇文字,感觉有点把简单的东西说复杂了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2010-5-17 21:50:10 | 只看该作者
    没图哦。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2010-5-18 10:53:41 | 只看该作者
    讲的不错,支持!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2010-5-19 15:20:36 | 只看该作者
    讲的不错,支持!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2010-11-23 11:42:19 | 只看该作者
    UP
    对于这种基础知识普及性质的帖子,我灰常喜欢,收藏了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2018-1-5 14:16
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    16#
    发表于 2011-6-17 18:13:48 | 只看该作者
    喜欢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2018-1-5 14:16
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    17#
    发表于 2011-6-17 18:13:54 | 只看该作者
    非常喜欢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2011-10-17 14:11:38 | 只看该作者
    强悍 我喜欢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2011-11-4 16:13:35 | 只看该作者
    讲的很好,也容易理解,顶!顶!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2011-11-10 08:46:25 | 只看该作者
    谢lz
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-9 10:03 , Processed in 0.080590 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表