传奇私服-性能测试工具比较:LoadRunner vs JMeter

时间:2019-11-01 19:20       来源: seosem.ws

性能测试工具比较:LoadRunner vs JMeter - 测试结果数据比较

2013年08月06日 11:22供稿中心:北大青鸟总部

摘要: 性能测试工具比较:LoadRunner vs JMeter - 测试结果数据比较

web请求(HTTP/HTML)进行性能测试,确认请求响应时间。分别使用Loadrunner和JMeter进行测试,比较测试结果。

  1、LoadRunner测试web请求响应时间

  1.1  编制(录制)脚本

  创建单协议(HTTP/HTML)脚本,调用如下web_url,作为一个简单事务:

lr_start_transaction("test");
web_url("
",
"URL=http://www.baidu.com/",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Snapshot=t1.inf",
"Mode=HTML",
LAST );
lr_end_transaction("test");
 

  1.2   运行时设置

  在Virtual User Generator,打开Vuser/Runtime Setting,设置browser emulation。设置每个迭代使用新的vuser,同时不使用cache,模拟用户第一次发送请求效果,如下:

传奇私服-性能测试工具比较:LoadRunner vs JMeter

  图1   设置browser emulation

  1.3  单个用户运行

  设置脚本以单用户在vu generator中运行,迭代10次。

  通过调用lr_start_timer和lr_end_timer函数获取web_url消耗时间,调用lr_get_transaction_wasted_time获取事务浪费时间,并调用lr_output_message打印到replay log中。

  执行结果:

Action.c(129): web_url("") was successful, 24357 body bytes, 2474 header bytes, 38 chunking overhead bytes   [MsgId: MMSG-26385]
Action.c(144): web_url elapsed = 1.085238
Action.c(167): lr_get_transaction_wasted_time = 0.868584
Action.c(172): Duration = 1.118885 , Waste = 0.868584
Action.c(182): Notify: Transaction "DL_PC" ended with "Fail" status (Duration: 1.1315 Wasted Time: 0.8686).
Action.c(185): actualElapsedTime = 1.146042
 

  上述消息显示,web_url请求成功返回,消耗时间1.085238秒,其中浪费时间0.868584秒。注意,Duration值稍大于web_url elapsed时间。

 那么,该事务的实际消耗时间,应该是Duration - Wasted Time,为0.2629秒。10次迭代平均值约为0.255秒,见下表。

  表1   LR测试的web_url请求平均duration时间和浪费时间

迭代次数

 

1

 

2

 

3

 

4

 

5

 

6

 

7

 

8

 

9

 

10

 

2~10次平均

 

web_url time

 

1.408252

 

0.231590

 

0.371534

 

0.416005

 

0.235011

 

0.215672

 

0.255214

 

0.215151

 

0.211167

 

0.255022

 

0.267374

 

wasted_time

 

0.910228

 

0.018863

 

0.010128

 

0.013624

 

0.010553

 

0.010947

 

0.010819

 

0.010799

 

0.011404

 

0.010636

 

0.011975

 

  接下来,在JMeter上执行相同的操作,记录单个请求的平均响应时间。

  2、 JMeter测试web请求响应时间

  2.1  测试计划

  在JMeter测试计划的线程组下,添加HTTP Cache Manager,勾选clear cache each iteration?,以使得每次迭代模拟用户第一次操作效果。

  然后添加测试HTTP采样器,集合报告,查看结果树等等。

  HTTP采样器的路径填写:。

  2.2  单线程组运行

  线程组的线程数属性设为1,迭代次数设为10,ramp-up设为0。

相关推荐