• LoadRunner 多用户并发 登录,上传数据,登出的脚本教程


    这里记录 Web/Http  模式,模拟多用户并发进行  : 登录,上传数据,退出登录一整套流程。并发的用户量多少,可自定义。这里不介绍录屏的方式,是自己写脚本去执行的。

    1.安装loadRunner.

    2.在安装目录的bin 文件夹下,找到 LRLauncherApp.exe,双击打开。

    下面这个弹框,直接cancel,因为我们不采用录屏的方式,自己写脚本去执行。

    3.在左侧,可以看到几个文件列表。

    vuser_init :执行开头的脚本  :一般写是用户登录(or 录制)过程的脚本

    action: 操作间的脚本  :一般写是用户操作(or 录制)过程的脚本

    vuser_end:执行结束的脚本  :  一般写是用户退出登录(or 录制)过程的脚本

    .ok,直接贴脚本代码,并解释:

    vuser_init()
    {
        web_custom_request("login.json",
            "URL=http://www.test.com/web/login.json",
            "Method=POST",
            "TargetFrame=",
            "Resource=0",
            "RecContentType=application/json",
            "Referer=http://www.test.com/web/login",
            "Snapshot=t3.inf",
            "Mode=HTML",
            "EncType=application/x-www-form-urlencoded; charset=UTF-8",
            //"Body={"username":"admin","password":"admin`12","rememberme":false}",
            "Body={"username":"{usernames}","password":"admin`12","rememberme":false}",
            LAST);
        return 0;
    }
    vuser_init 文件中代码:因模拟多用户并发登录,故需传入不同的用户名及密码,如上代码注释掉的,我们选中 用户名的值  admin  ,右键,选择 Replace with a Parameter。输入参数名称,选择Properties,选择用户名dat文件所在位置。注意:用户名与密码是
    一一对应的,所以构建用户名密码的dat文件时,注意匹配。usernamefor55.dat 是dat格式的文本文件,内容如下图所示:我这里的测试数据,用户名不一样,但密码都一样,所以密码就没有参数化了。

                    

    5.用户上传数据:

    这里业务设计逻辑是:用户先上传数据元信息,数据分配id后,再根据分配的id,进行upload数据。故,有2个POST请求:

    脚本:

    Action()
    {
        lr_think_time(5);    //思考时间,模拟人在真实操作时的停顿时间。
         
        web_reg_save_param("childID","LB=childID":"","RB="}","Search=Body",LAST);  //利用该方法,截取web/mycontent/datas.json 响应结果的内容中的id值,并以参数childID表达。LB表示待截取值左边的字符,LR表示其右边的字符。
        web_custom_request("datas.json",
            "URL=http://www.test.com/web/mycontent/datas.json",
            "Method=POST",
            "TargetFrame=",
            "Resource=0",
            "RecContentType=application/json",
            "Referer=http://192.168.112.100:8090/web/mycontent/datas",
            "Snapshot=t6.inf",
            "Mode=HTML",
            "EncType=application/x-www-form-urlencoded; charset=UTF-8",
            "Body={"fileName":"test.csv","type":"CSV","coordType":"WGS84","dataMetaInfo":{"fileEncoding":"UTF-8","xField":null,"yField":null}}",   // Body传入的是POST请求的请求体。  对于" 号,前面需要进行转义。
            LAST);
          
         lr_think_time(5);
        web_submit_data("upload.json",
            "Action=http://www.test.com/web/mycontent/datas/{childID}/upload.json",     //{childID} 传入的是上面 截取的响应id值。
            "Method=POST",
            "EncType=multipart/form-data",
            "TargetFrame=",
            "RecContentType=application/json",
            "Referer=http://192.168.112.100:8090/web/mycontent/datas",
            "Snapshot=t7.inf",
            "Mode=HTML",
            ITEMDATA,
            "Name=uploadFile", "Value=D://wujr//createdata//testdata//标注点.csv", "File=Yes", ENDITEM,  //Value=??对应的待上传文件的绝对路径。
            LAST);
        return 0;
    }

    好吧,解释都在注释中了,其他也没啥说的了

    6.登出。 vuser_end文件中:

    vuser_end()
    {
        web_custom_request("logout",
            "URL=http://www.test.com/security/logout",
            "Method=GET",
            "Resource=0",
            "RecContentType=text/html",
            "Referer=",
            "Mode=HTTP",
            "EncType=application/x-www-form-urlencoded; charset=UTF-8", 
            LAST);
        return 0;
    }

    7.脚本写好了,开始运行:先点他,执行一遍,看是否有错。

    没问题后,开始自动执行:

    .

    最后:点击这里:开始执行。

    edit by tangyuan。thanks

  • 相关阅读:
    What the key facts to choose Row Store and Column Store 沧海
    自定义数据源(ECC>BW) 沧海
    What is SAP HANA appliance software 沧海
    安装BI_CONT时遇到Open Data Extraction Requests的问题 沧海
    Process Chain\DTP\Infopackage相关的几个table和function module 沧海
    Note 741478 FAQ: Materialized views 沧海
    HANA 与 Exalytics 的对比 沧海
    SAP HANA database and how to improve performance 沧海
    SAP HANA 已实施的客户清单 沧海
    BW BEx的VBA开发接口介绍 沧海
  • 原文地址:https://www.cnblogs.com/fhychzu/p/7677489.html
Copyright © 2020-2023  润新知