发布新日志

  • LR关联相关问题

    2015-04-29 11:12:05

    1、LR并发400用户,报错较多,查看错误日志,报错信息-35061 Login.c(450): 错误 -35061: 找不到请求的参数“DAID”的匹配项。检查请求的边界是否存在于响应数据中。
     删掉web_reg_save_param_ex函数下面的 "RequestUrl=***"
    2、web_reg_save_param_ex(
                    "ParamName=CorrelationParameter_2",
                    "LB=",
                    "RB=",
                    SEARCH_FILTERS,
                    "Scope=Body",
                    "RequestUrl=*/test.123456.com/*",
                    LAST);
    ===================
    有很多网站在获取session或是token的时候都会直接将值输出在页面中,左右没有边界可以让你获取。在LR当中获取服务器的动态数据又需要靠左右边界来截取。上面这段脚本可以解决。
  • LR事务个数计算

    2015-04-16 09:48:40

    transaction个数=设置user个数*(action_init+action_end+(action中的事务数*迭代次数))
  • LR访问https解决办法

    2015-04-14 13:41:22

    LoadRunner Vugen Cannot record secure web sites (https:// www…)

    At a CMD prompt type 
     
     certutil -setreg chain\minRSAPubKeyBitLength 512
    //允许的最小 RSA 密钥长度为 512
  • LoadRunner中web_custom_request 和 web_submit_data的区别

    2015-02-12 13:40:27

        web_custom_request方法可以发送POST和GET类型的请求

        web_submit_data只能发送POST类型的请求

        所有web_submit_data方法发送的请求都可以使用web_custom_request来实现,但是web_custom_request可以实现web_submit_data无法实现的请求。

        比如“查询所有邮件并删除”这个案例中,查询时我们使用关联把所有邮件对应的标识抓取成一个数组,如果使用web_submit_data来完成这个删除的请求,需要很多个web_submit_data请求才能完成,但使用web_custom_request就可以通过一个请求完成,方法是自己写代码拼一个web_custom_request 方法POST请求的Body值。

       web_submit_data请求中提交的数据是以这样的方式存在的

      “Name=属性名称,,Value=属性值” 

         如:
         “Name=locale”, “Value=L2″, ENDITEM, 
         “Name=dataCenter”, “Value=yh”, ENDITEM, 
         “Name=username”, “Value=12044″, ENDITEM,

        如果我们想提交的某个属性包含包含多个值(上文的例子中就是这样的情况),它就无法处理了,只能通过多个web_submit_data来处理。


        下面是一个典型的web_submit_data和web_custom_request请求,可以看到web_custom_request中提交的数据(body)是以这样的方式存在的

       “Body=属性名称=属性值&属性名称=属性值&……

         web_submit_data(“login”, 
            “Action=http://192.168.14.21:78……ndex_sso.jsp”, 
            “Method=POST”, 
            “RecContentType=text/html”, 
            “Referer=http://192.168.14.21:7888…=/index_sso.jsp”, 
            “Mode=HTML”, 
            ITEMDATA, 
            “Name=locale”, “Value=L2″, ENDITEM, 
            “Name=dataCenter”, “Value=yh”, ENDITEM, 
            “Name=username”, “Value=12044″, ENDITEM, 
            “Name=password”, “Value=”, ENDITEM, 
            “Name=_eventId”, “Value=submit”, ENDITEM, 
            “Name=isPureWeb”, “Value=true”, ENDITEM, 
            “Name=solutionName”, “Value=eas”, ENDITEM, 
            “Name=dbType”, “Value=1″, ENDITEM, 
            “Name=easSessionId”, “Value=eas;yh;L2;12044;BaseDB”, ENDITEM,        
            “Name=userAuthPattern”, “Value=BaseDB”, ENDITEM, 
            “Name=loginFlow”, “Value=true”, ENDITEM, 
            LAST);

        web_custom_request(“CommonQueryDialog.jsf_3″,
            “URL=http://192.168.14.21:7888/ea…ueryDialog.jsf”,
            “Method=POST”,
            “Resource=0″,
            “RecContentType=text/javascript”,
            “Referer=http://192.168.14.21:7888/…DailyLoanUERc+ihtml”,
            “Mode=HTML”,
            “EncType=application/x-www-form-urlencoded;charset=UTF-8″,
            “Body=queryDialog:selectSolutionList=查询&queryDialog:j_iduserFilterPanel_3_value=Kd5QoAEPEADgAAf8wKgEDMznrtQ=&=湖南亚华乳业有限公司&queryDialog:j_iduserFilterPanel_6=&queryDialog:j_iduserFilterPanel_9_value=3&=大于等于&queryDialog:j_iduserFilterPanel_11=0&queryDialog:j_iduserFilterPanel_14_value=&=&queryDialog:j_iduserFilterPanel_17_value=&=&queryDialog:j_iduserFilterPanel_20_value=&=&queryDialog:j_iduserFilterPanel_23_value=&=&queryDialog:j_iduserFilterPanel_26_value=&=&queryDialog:j_iduserFilterPanel_29_value=&=&queryDialog:j_iduserFilterPanel_32=&queryDialog:j_iduserFilterPanel_35_value=&=&queryDialog:j_iduserFilterPanel_38=2008-08-01&queryDialog:j_iduserFilterPanel_41=2008-08-28&queryDialog:filterGrid_modifiedData=[]&queryDialog:filterGrid_removedData=[]&queryDialog:_postback=&queryDialog:userFilterPanel=/cp/bc/dailyLoanBillCommQuery.xhtml&javax.faces.ViewState={vs2}”,
            LAST);

    通过观察,发现有两种情况下的POST请求会被LoadRunner录制为web_custom_request,

    1.   上文提到的批量提交多条同属性名称的数据的请求
    2.   header属性x-requested-by值为XMLHttpRequest的POST请求

    ****这两种实现请求的方法还有一个需要注意的地方就是web_custom_request中body中的属性值如果包含一些特殊字符,必须通过URL编码,否则Web服务器会返回500错误,一个典型的例子是如果Body中包含ViewState,ViewState中常常有“=”之类的特殊字符,此时必须通过URL编码,LoadRuner中提供了一个这样的编码转换函数

           web_convert_param(“vs1″, “SourceEncoding=HTML”,  “TargetEncoding=URL”, LAST);

  • Loadrunner web录制脚本基础参数

    2015-02-12 13:18:15

    web_url("login!toBackdoorLogon.action", 

    "URL=http://ip:端口号/vams/login!toBackdoorLogon.action", 

    "TargetFrame=", //目标窗口_BLANK:打开一个新窗口

                                              _PARENT:取代最后一个窗口的父窗口
                                              _SELF:
    取代最后一个窗口

                                             _TOP:
    取代整个页面

    "Resource=0", //URL是否为一个资源  0:不是   1:

    "RecContentType=text/html", //录制过程中,响应报头内容格式

    "Referer=",  //提交网页的URL

    "Snapshot=t2.inf",   //快照文件名

    "Mode=HTML",  //录制水平: HTML or HTTP.

    //HTML level:指导VuGen录制直观的HTML动作,录制web_url,web_link,web_image。返回的是HTML页面,而不是脚本和程序。

    //HTTP level:指导VuGen录制全部的服务器响应。不产生web_link,web_image,web_submit_form。比HTML高级,但当读脚本时不是很直观。

    EXTRARES,  //参数表划分标志(下个标志是一个资源特征表)

    "Url=js/dateTime/skin/WdatePicker.css", ENDITEM, //资源结束志   

    "Url=images/systemSkin/1_01.png", ENDITEM, 

    "Url=images/systemSkin/3_01.png", ENDITEM, 

    "Url=images/systemSkin/1_02.png", ENDITEM, 

    "Url=images/systemSkin/ss.png", ENDITEM, 

    "Url=images/systemSkin/1_03.png", ENDITEM, 

    "Url=images/systemSkin/2_03.png", ENDITEM, 

    "Url=images/systemSkin/1_04.png", ENDITEM, 

    "Url=images/systemSkin/2_01.png", ENDITEM, 

    "Url=images/systemSkin/2_02.png", ENDITEM, 

    "Url=images/systemSkin/2_04.png", ENDITEM, 

    "Url=images/systemSkin/3_02.png", ENDITEM, 

    "Url=images/systemSkin/3_03.png", ENDITEM, 

    "Url=images/systemSkin/3_04.png", ENDITEM, 

    LAST); //特征表结束标志

  • LR11导入license失败

    2015-02-03 09:31:03

    进入安装了LR11,按照网上的方法导入了两个dll文件,发现导入license失败,提示失效,然后去找lr的注册表信息
    终于在与9.x版本不同的位置找到了,删除以下两个注册表信息,终于可以导入license成功
    {HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MercuryInteractive\LoadRunner\License2}
    {HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\Interface\{87B3ADD4-21EB-11d5-93EF-00105AA0FD2D}

    遇到同样问题的GGDDJJMM们做个参考吧。。。
  • LoadRunner录制event=0

    2011-06-10 15:21:47

       前天安装好了LoadRunner11,并且破解成功,很是开心。今天闲来无事,打开工具准备温习温习已经丢掉的知识。杯具发生了。。录制过程中没有产生任何event。。。于是百度了一下。。解决。。happy!我的安装环境WINXP+IE8+LR11.

       1、网上说要把INTERNET高级设置中的“启用第三方浏览器扩展*”前面的钩钩去掉,于是我按照这个做了。录制过程仍然没有event。

       2、有查到说在电脑属性-高级-性能-数据执行保护中添加LR安装目录下的vugen.exe,咱也照做。重新录制,居然正常了。。

       这时我就在想是上面的两个操作同时起作用还是第二步操作起作用呢,这个简单,咱再把“启用第三方浏览器扩展*”勾上,开始录制。录制过程中看到产生了event,点击结束录制按钮,居然没有任何脚本。可见刚才虽然产生了event但是最后却没有实际生成脚本。

       看来1、2中描述的两个操作还都是有作用的,咱还是老老实实按照网上说滴来搞吧。。

       不过大家各自安装环境不同,同一个现象,原因可能还会有很多种。。大家一起慢慢摸索吧。。此处将大家智慧集合,仅供同样问题的难友做个参考。。O(∩_∩)O

     

Open Toolbar