zoukankan      html  css  js  c++  java
  • LoadRunner 事物

    添加事物

    Action()
    {
        lr_start_transaction("openindex");
        web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours/", 
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        lr_end_transaction("openindex", LR_AUTO);
        return 0;
    }
    运行结果:
    Action.c(4): 通知: Transaction "openindex" started. Action.c(6): web_url("WebTours") 已成功,312 个正文字节,164 个标头字节 [MsgId: MMSG-26386] Action.c(15): 通知: Transaction "openindex" ended with "Pass" status (Duration: 0.4420 Wasted Time: 0.3987).

    lr_end_transaction的4中状态

    LR_PASS LR_FAIL 自定义事物成功和失败。也可以用 lr_set_transaction_status_by_name(LR_FAIL,"openindex"); 函数自定义事物状态

    Action()
    {
        int status ;
        lr_start_transaction("openindex");
        //web_url 成功返回0 失败返回1
        status =web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours1/", //不存在的网址
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        if (status==0) {
            lr_end_transaction("openindex", LR_PASS);
        }else{   
            lr_end_transaction("openindex", LR_FAIL);
        }    
        return 0;
    }
    运行结果:
    网址不存在 Action.c(
    6): 通知: Transaction "openindex" ended with "Fail" status (Duration: 0.4105 Wasted Time: 0.3801). 如果网址存在,请求成功: Action.c(15): 通知: Transaction "openindex" ended with "Pass" status (Duration: 0.3951 Wasted Time: 0.3687).

    LR_AUTO 

    Action()
    {
        lr_start_transaction("openindex");
        web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours/1", //不存在的网址
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        lr_end_transaction("openindex", LR_AUTO);
        return 0;
    }
    运行结果:
    Action.c(4): 通知: Transaction "openindex" ended with "Fail" status (Duration: 0.4072 Wasted Time: 0.3774).
    Action()
    {
        lr_start_transaction("openindex");
        web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours/", //网址正确
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        lr_set_transaction_status_by_name(LR_FAIL,"openindex"); //手动设置事务失败
        lr_end_transaction("openindex", LR_AUTO);
        return 0;
    }
    结果:
    Action.c(14): 通知: Transaction "openindex" ended with "Fail" status (Duration: 0.4284 Wasted Time: 0.3811).

    LR_STOP 

    事物返回时间的详细解释

    Action.c(14): 通知: Transaction "openindex" ended with "Fail" status (Duration: 0.4284 Wasted Time: 0.3811).

    Duration(持续时间):事物开始一共的时间。包括Wasted Time、代码浪费时间。在Analysis获取的是 Duration-Wasted Time时间。

    Wasted Time(浪费的时间):LR为了支撑,工具内部的时间。事物的统计。用lr_start_timer()  lr_end_timer()函数获取。

    Action()
    {
        lr_start_transaction("openindex");
        web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours/", //网址正确
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        //lr_think_time(3);   
        lr_output_message("Duration:%lf;Wasted Time=%lf",lr_get_transaction_duration("openindex"),lr_get_transaction_wasted_time("openindex"));
        lr_end_transaction("openindex", LR_AUTO);
        return 0;
    }
    运行结果:
    Action.c(13): Duration:0.389529;Wasted Time=0.361978
    去掉lr_think_time注释

      Action.c(13): Duration:3.384649;Wasted Time=0.352630   //Duration多了3秒
      Action.c(14): 通知: Transaction "openindex" ended with "Pass" status (Duration: 3.3882 Think Time: 2.9994 Wasted Time: 0.3526).

     程序消耗时间:

    Action()
    {
        merc_timer_handle_t timer;
        char save[1000];
        double wasteTime;
        int i;
        lr_start_transaction("openindex");
        web_url("WebTours", 
            "URL=http://127.0.0.1:1080/WebTours/", 
            "Resource=0", 
            "RecContentType=text/html", 
            "Referer=", 
            "Snapshot=t3.inf", 
            "Mode=HTTP", 
            LAST);
        timer=lr_start_timer();
        for(i=0;i<1000;i++){
            sprintf(save,"this is the way we wasteTime in a script %d",i);
        }
        wasteTime=lr_end_timer(timer);
    //lr_wasted_time(wasteTime*1000); //把浪费的时间加到WastedTime.因为wasteTime是秒。lr_wasted_time接收的是毫秒。所以好*1000 lr_output_message(
    "Duration:%lf;Wasted Time=%lf",lr_get_transaction_duration("openindex"),lr_get_transaction_wasted_time("openindex")); lr_end_transaction("openindex", LR_AUTO); return 0; } 运行结果: Action.c(22): 通知: Transaction "openindex" ended with "Pass" status (Duration: 3.0407 Wasted Time: 0.3701). 持续时间包括了程序时间。
    去掉 lr_wasted_time注释。运行结果
    Action.c(23): 通知: Transaction "openindex" ended with "Pass" status (Duration: 3.7046 Wasted Time: 3.6650).
    可以看到for循环运行的时间,被加到了Wasted Time

    需要注意的

    1)事务中不要插入日志函数

    2)不要插入集合点函数

    3)尽量不要插入思考时间

     

     

  • 相关阅读:
    整数转换成字符
    html总结(一)
    ssh服务
    原码反码补码图形化注意
    关于副本机制
    win8设置自动关机
    python制作的翻译器基于爬取百度翻译【笔记思路】
    python多线程扫描爆破网站服务器思路【笔记】
    用python实现多线程爬取影视网站全部视频方法【笔记】
    利用Python3的requests和re库爬取猫眼电影笔记
  • 原文地址:https://www.cnblogs.com/milanmi/p/7083081.html
Copyright © 2011-2022 走看看