zoukankan      html  css  js  c++  java
  • 事务创建函数

    事务创建函数

    • int lr_start_transaction(const char * transaction_name)

    • int lr_end_transaction(const char * transaction_name,int status)

    • lr_start_sub_transaction(const char * transaction_son_name,const char * transaction_father_name)

    • lr_end_sub_transaction(const char * transaction_son_name,int status)

    transaction_name:事务名称 

    status:事务结束状态,共有4种状态。 

    transaction_son_name :子事务名称 

    transaction_father_name:父事务名称 

    注意:子事务和父事务很像,但是父事务支持的很多函数在子事务中都无法实现,所以应酌情考虑。

    LRPASS (通过)

    指事务的状态由系统自动根据默认规则来判断,结果为PASS/FAIL/STOP 
    LR_AUTO也是根据服务器的返回状态信息来决定事务是以LR_PASS状态通过还是以LR_FAIL状态结束,只要服务器返回页面,那么事务就会认为请求成功发出去了,服务器看懂了请求也返回了内容,自然事务就是PASS状态。 
    这样由于事务的自动判断,导致虽然操作失败的,但是得到了一个响应时间,并且这个响应时间又没正确反映出做这件事情的真正时间,最终影响测试结果。添加检测函数有时候可以解决这个问题

    LR-FAIL (失败)

    指事务是以PASS状态通过的,说明改事务正确地完成了,并且记录下对应的时间,这个时间就是指做这件事情所需要消耗的时间。

    LR-AUTO (自动)

    LR_FAIL是指事务以FAIL状态结束,该事务是一个失败的事务,没有完成事务中脚本应该达到的效果,得到的时间不是正确操作的时间,这个时间在后期的统计中将被独立统计。

    LR-STOP (暂停)

    LR_STOP将事务以STOP状态停止。

    说明:

    事务的PASS和FAIL状态会在场景的对应计数器中记录,包括通过的次数和事务的响应时间,方便后期分析改事务的吞吐量以及响应时间的变化情况 

    其中LRAUTO的默认值是LR-PASS,可以在事务结束前通过Ir-set transaction status进行修改。 

    如果在Ir-end-transaction中没有指定事务的结束状态是LR-AUTO,而 ,是明确指定为LR-PASS. LR-FAIL, LRSTOP中的一种,则事务将以最后指定的状态来结束。 

    须要注意的是,当使用Ir-start-transaction开始一个事务后,其后面的脚本中不可以再干始同名称的事务,除非这个事务已经通过Ir-end-transaction结束。

    Action2()
    
    {
    
        lr_start_transaction("login");
    
     
    
        //打开登录界面
    
        web_url("WebTours",
    
            "URL=http://127.0.0.1:1080/WebTours/",
    
            "Resource=0",
    
            "RecContentType=text/html",
    
            "Referer=",
    
            "Snapshot=t16.inf",
    
            "Mode=HTML",
    
            LAST);
    
     
    
        lr_think_time(4);
    
     
    
        //注意函数的位置
    
        // jojo1为要查找的文本(实际文本如上图,jojo,仅在登录后才出现,这里为了演示故意找不存在的文本)
    
    web_reg_find("Search=Body", "SaveCount=login_times", "Text=jojo1", LAST);
    
     
    
        //提交登录页面的表单
    
        web_submit_form("login.pl",
    
            "Snapshot=t17.inf",
    
            ITEMDATA,
    
            "Name=username", "Value=jojo", ENDITEM,
    
            "Name=password", "Value=bean", ENDITEM,
    
            "Name=login.x", "Value=0", ENDITEM,
    
            "Name=login.y", "Value=0", ENDITEM,
    
            LAST);
    
     
    
        lr_think_time(4);
    
       
    
        if(atoi(lr_eval_string("{login_times}")) >= 1) {//找到“jojo”,说明登录成功
    
            lr_end_transaction("login", LR_PASS);}
    
        else{  //未找到,说明登录失败
    
    
        lr_end_transaction("login", LR_FAIL);} 
    
        return 0;
    
    }

     

  • 相关阅读:
    LeetCode OJ
    LeetCode OJ
    LeetCode OJ
    网页排版中的浮动和定位(学习笔记)
    在html中,<input tyle = "text">除了text外还有几种种新增的表单元素
    初学者入门web前端:C#基础知识:函数
    初学者入门web前端 C#基础知识:数组与集合
    while/for循环
    jmeter http请求与参数化
    rpm -e --nodeps
  • 原文地址:https://www.cnblogs.com/lvchengda/p/12624857.html
Copyright © 2011-2022 走看看