软件测试从业者,立志做出一番事业,2015加油~!

发布新日志

  • LoadRunner web_url函数【摘】

    2010-03-30 14:56:18

    web_url 
    语法: 
            Int Web_url(const char *name, const char * url, <Lists of Attributes>, [EXTRARES,<Lists of Resource Attributes>,LAST) 

    返回值 
            成功时返回LR_PASS (0),失败时返回 LR_FAIL (1)。 

    参数: 
            Name:VuGen中树形视图中显示的名称,在自动事务处理中也可以用做事务的名称。 

            url:页面url地址。 

            List of Attributes:(支持下列属性) 

            1 TargetFrame 

            2 TargetBrowser or TargetBrowserOrdinal 

            3 RecContentType  - 在录制期间响应的报头文本类型(text/html, application/x- javascript),这是为了确认目标URL是否是可录制的资源。 
            4 Referer - 要提交页面请求的URL .(获得当前页面,如果明确指出了位置,那么这个属性无效或者忽略。URL中写明了,要获取的页面) 
            5 Resource - 指定一个值说明这个URL是否是一个资源,0 表示不是资源,1 表示是资源 
            6 Snapshot  -  快照,快照文件名称,用来关联用的。 
            7 Mode  - 录制的等级,是否是HTML或者HTTP模式。 

            EXTRARES:分隔符,表示下列列表,是由script、active、java applet、flash产生的请求(具体设置在,Recorded options --Recording--选择 html base scritp --- html Reccorded  可以设置是否需要录制这些东西。)。 

            List of Resource Attributes:下载的资源属性 

    URL 
    The URL (Uniform. Resource Locator) of the web resource to load 
    通过URL地址(资源统一定位器)要下载的web资源 
    Referer 
    The URL of the referring web page. 
    发送下载请求的页面。比如一个swf要下载一个图片,那么swf就是referer 
    ENDITEM 
    A marker that indicates the end of each resource in the list. 
    列表中每个资源的结束标志符 
            LAST:属性列表结束的标记符。 



    说明 
            Web_url根据函数中的URL属性加载对应的URL,不需要上下文。 

           

            可以使用web_url 模拟从FTP服务器上下载文件。web_url 函数会使FTP服务器执行文件被真实下载时的操作。除非手工指定了"FtpAscii=1",下载会以二进制模式完成。 

            在录制选项中,Toos—Recording Option下,Recording选项中,有一个Advanced HTML选项,可以设置是否录制非HTML资源,只有选择了“Record within the current script. step”时,List of Resource Attributes才会被录制到。非HTML资源的例子是gif和jpg图象文件。 

            通过修改HTTP头可以传递给服务器一些附加的请求信息。使用HTTP头允许请求中包含其他的内容类型(Content_type),象压缩文件一样。还可以只请求特定状态下的web页面。 

            所有的Web Vusers ,HTTP模式下的WAP Vusers或者回放模式下的Wireless Session Protocol(WSP),都支持web_url函数。 
  • web_find()和web_reg_find()

    2010-03-26 16:01:01

    web_find()和web_reg_find() 【摘】

    这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:

    一、web_find()函数

    该函数的作用是“在页面中查找相应的内容”,常用参数及含义如下:

    web_find("web_find", //定义该查找函数的名称

    %vR`}1}0 "RightOf=a", //定义查找字符的右边界

    "LeftOf=b", //定义查找字符的左边界

    "What=name", //定义查找内容

    LAST);

    使用该函数注意以下事项:

    1、 位置

    该函数在页面内容显示出来以后,在页面中进行查找,所以只能写在要查找内容之后

    2、 录制模式

    该函数只能在基于HTML模式录制的脚本中进行查找

    3、 必须启用内容检查选项

    在runtime setting->Preferences里面,把Enable image and text check选中,否则不执行该查找函数

    4、 在VB和JAVA语法中不支持该函数

    该函数有以下一个缺点:

    1、 执行效率较低

    2、 不返回查找结果情况,如想在执行该函数后根据查找结果做进一步操作时,没有返回值可以依据

    例如:

    在页面中查找“登录成功”的字符串,如果找到该字符串在日志中输出“登录成功”,如果找不到该字符串,则在日志中输出“登录失败”,此时使用该函数没有依据来做此判断,但使用web_reg_find()函数,使用它其中的SaveCount可以进行判断,具体方法我们下面介绍。

    转载请注明出处:http://www.51testing.com/?41972

    二、web_reg_find()函数

    该函数的作用是“在缓存中查找相应的内容”,常用参数及含义如下:

    web_reg_find("Search=Body", //定义查找范围

    "SaveCount=ddd", //定义查找计数变量名称

    "Text=aaaa", //定义查找内容

    LAST);

    使用该函数注意以下事项:

    1、 位置

    该函数写在要查找内容的请求之前,通常情况下写在如下六个函数之前:

    Web_castom_request();web_image();web_link();web_submit_data();web_submit_form();web_url()

    2、 使用技巧

    在该函数的参数中有个“SaveCount”,该参数可以记录在缓存中查找内容出现的次数,我们可以使用该值,来判断要查找的内容是否被找到,下面举个例子来说明:(引用LR的帮助中的例子)

    // Run the Web Tours sample

    web_url("MercuryWebTours",

    "URL=http://localhost/MercuryWebTours/",

    "Resource=0",

    "RecContentType=text/html",

    "Referer=",

    "Snapshot=t1.inf",

    "Mode=HTML",

    LAST);

    // Set up check for successful login by looking for "Welcome"

    web_reg_find("Text=Welcome",

    "SaveCount=Welcome_Count",

    LAST);

    // Now log in

    web_submit_form("login.pl",

    "Snapshot=t2.inf",

    ITEMDATA,

    "Name=username", "Value=jojo", ENDITEM,

    "Name=password", "Value=bean", ENDITEM,

    "Name=login.x", "Value=35", ENDITEM,

    "Name=login.y", "Value=14", ENDITEM,

    LAST);

    // Check result

    if (atoi(lr__string("{Welcome_Count}")) > 0){ //判断如果Welcome字符串出现次数大于0

    lr_output_message("Log on successful."); }//在日志中输出Log on successful

    else{ //如果出现次数小于等于

    lr_error_message("Log on failed"); //在日志中输出Log on failed

    return(0); }

    我觉得这个方法非常有用,我们可以举一反三,应用到我们实际的项目中

    转载请注明出处:http://www.51testing.com/?41972

    三、插入函数的方法

    1、 手工写入,在需要插入函数的位置手工写入该函数

    2、 光标停留在要插入函数的位置,在INSERT菜单中,选择new step,在列表中选择或查找要插入的函数,根据提示填写必要的参数

    3、 在tree view模式下,在树状菜单中选中要插入函数的位置,右键,选择insert after或insert before,根据提示填写必要的参数

    四、总结

    1、 这两个函数函数类型不同,WEB_FIND是普通函数,WEB_REG_FIND是注册函数

    2、 WEB_FIND使用时必须开启内容检查选项,而WEB_REG_FIND则不没有此限制

    3、 WEB_FIND只能只用在基于HTML模式录制的脚本中,而WEB_REG_FIND没有此限制

    4、 WEB_FIND是在返回的页面中进行内容查找,WEB_REG_FIND是在缓存中进行查找

    5、 WEB_FIND在执行效率上不如WEB_REG_FIND

  • 如何重装loadrunner(转)

    2009-03-17 17:29:57

    如何重新安装LoadRunner
     
      如果安装LoadRunner最新版本失败,相信很多朋友都会遇到重新安装不成功的烦恼。原因可能是多种情况,可能是早期的LoadRunner版本兼容性问题导致安装失败,也可能安装过程中弹出组件注册失败的各种错误。如果正常重新安装,只能先让LoadRunner充分卸载。
     
      可以按以下的步骤操作:。
     
      1.保证所有LoadRunner的相关进程(包括ControllerVuGenAnalysisAgent Process)全部关闭。
     
      2.备份好LoadRunner安装目录下测试脚本,这些脚本一般存放在LoadRunner安装目录下的“scrīpts”子目录里。
     
      3.操作系统控制面板的删除与添加程序中运行LoadRunner的卸载程序。如果弹出提示信息关于共享文件的,都选择全部删除。
     
      4.卸载向导完成后,按照要求重新启动电脑。完成整个LoadRunner卸载过程。
     
      5.删除整个LoadRunner目录。(包括Agent Process)。
     
      6.在操作中查找下列文件,并且删除它们。
     
      1wlrun.*
     

      2vugen.*
     

      7.运行注册表程序(开始- 运行-regedit)。
     
      8.删除下列键值:
     
      如果只安装了MI公司的LoadRunner这一个产品,请删除:
     
      HKEY_LOCAL_MACHINESOFTWAREMercury Interactive.
     

      HKEY_CURRENT_USERSOFTWAREMercury Interactive.
     

      否则请删除:
     
      HKEY_LOCAL_MACHINESOFTWAREMercury InteractiveLoadRunner.
     

      HKEY_CURRENT_USERSOFTWAREMercury InteractiveLoadRunner.

      9.最后清空回收站。
     
      如果你完成了以上操作,你就可以正常的重新安装LoadRunner.最好保证安装LoadRunner时关闭所有的杀毒程序。因为以往在安装LoadRunner时同时运行杀毒程序会出现不可预知的问题。

     

    License的问题: 
           
    卸载:

           
    因为之前一直没有分析正确问题的所在,所以卸载和重新安装loadrunner好几次,关于卸载的一些问题,及时你按照卸载工具卸载了loadrunner,下次装的时候还是会包license失效,解决方法,要登录到注册表regedit中。
           
    删除如下内容:
            HKEY_CLASSES_ROOT\Mercury.Lm70Control
            HKEY_CLASSES_ROOT\Mercury.Lm70Control.1
           
    同时删除

            Mercury.Lm70ControlMgr
            Mercury.Lm70ControlMgr.1

           然后就使用查找功能,搜索“Mercury”,发现有Lm70Contro字样的东西都要删除掉。

           最后删除下面内容:

            HKEY_CURRENT_USER\Software\Mercury Interactive
            HKEY_LOCAL_MACHINE\SOFTWARE\Mercury Interactive

           删除完成后,继续填入license,下一步,如果还是不行,继续去注册表中删除上边内容,知道没有了,就OK了。
           
    这些都是自己做过实际操作的内容,希望对大家有帮助。

    ()  卸载后,执行安装过程时出现" license security violation.Operation is not allowed "提示信息,安装失败
    解决方案:
    license清理工具:我的文件里面有:deletelicense.tar,自己去下

    http://bbs.51testing.com/viewthread.php?tid=84208

Open Toolbar