zoukankan      html  css  js  c++  java
  • 性能测试工具比较:LoadRunner vs JMeter

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

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

     1.1  编制(录制)脚本

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

       lr_start_transaction("test");

        web_url("www.baidu.com",

        "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,模拟用户第一次发送请求效果,如下:

    图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("www.baidu.com") 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采样器的路径填写:http://www.baidu.com/

    2.2  单线程组运行

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

    执行结果

  • 相关阅读:
    codeforces431C
    codeforces158C
    codeforces570C
    codeforces472C
    codeforces401C
    codeforces630C
    codeforces581C
    校内题目腐草为萤
    校内题目大美江湖
    洛谷P3370 && 字符串哈希讲解
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3215121.html
Copyright © 2011-2022 走看看