loadrunner Web_类函数之web_dump_cache()

来源:互联网 发布:fp系列编程手册 编辑:程序博客网 时间:2024/06/05 15:37

web_dump_cache()--常用函数

Vuser缓存保存到文件,以备后续使用。

intweb_dump_cache(const char * Name,const char * fileName,[const char * Replace],LAST);

 

 参数说明:

名称:Graphical Vuser脚本中步骤的标签。还用作LoadRunner中自动事务的事务名称。

fileName:用于存储高速缓存的文件的完整路径名。

替换:覆盖现有文件:“是”或“否”。

LAST:指示参数列表结束的标记。

 

一般信息 :

web_dump_cache保存浏览器缓存。它与web_load_cache一起使用以实现Vuser持久性高速缓存。脚本始终使用相同的初始高速缓存运行。

 

目的是在手动运行脚本时捕获浏览器缓存一次。然后在测试中可以重复使用相同的缓存。使用Vuser持久缓存可提高应用程序和数据库服务器上的CPU使用率。

 

在记录脚本之后,在开始时添加web_load_cache,在Action或vuser_end部分的末尾添加web_dump_cache,根据测试情况进行调整。运行脚本一次,使用web_load_cache调用注释掉。然后取消注释web_load_cache调用并注释掉web_dump_cache调用。结果是,在每次运行时,您创建的缓存都会重新加载。

 

文件名路径可以是绝对的(例如,“FileName= c:\\ MyDir \\ User1.cache”)或相对于当前虚拟用户目录(例如,“FileName= Iteration1.cache”)。请注意,在运行dump命令之前,必须创建缓存文件文件夹

 

如果使用相对文件名,则在保存到新位置或复制到Load Generator主机时,将使用脚本复制文件。此行为是平台无关的,与驱动器映射和网络位置无关。

 

仅当不希望将缓存文件链接到脚本时才使用绝对路径名。例如,如果您希望在每个主机上使用不同的缓存,请使用绝对路径,以防止每次增强脚本时开发机器中的缓存都覆盖主机缓存。

 

文件扩展名为“.cache”。即使未指定也添加。例如,如果输入“FileName = Iteration2.txt”,则缓存文件为“FileName =Iteration2.txt.cache”。

 

文件名可以参数化,以便不同的虚拟用户或不同的迭代使用不同的文件。例如,“FileName = Iteration {param} .cache”

Replace指定是否替换已存在的文件(“Replace = yes”)或不替换(“Replace = no”)。默认值为“Replace = yes”。

注意:如果脚本不是在将运行测试的机器上开发的,请确保主机可以在fileName中给定的路径访问缓存文件。

 

示例:web_dump_cache和web_load_cache

在此示例中,Vuser登录到系统并查看她的工资单。脚本由测试开发人员运行一次,web_load_cache调用已注释掉,并且web_dump_cache调用和web_add_cookie调用取消注释。这将创建要在实际测试中使用的文件。

 

创建文件后,将取消注释web_load_cache调用,并注释web_dump_cache调用和web_add_cookie调用。在后续运行中,在运行业务流程之前加载高速缓存文件。

Action()

{

/* Initially usedto create the Vuser environment:

web_add_cookie("SignOnDefault=;domain=pbntas05; path=/");

web_add_cookie("http%3a%2f%2fpbntas05%3a8250%2fpsp%2fps%2femployee%2fhrms%2frefresh=list:|;domain=pbntas05; path=/");

    web_add_cookie("storedCookieCheck=true;domain=pbntas05; path=/");

End setupfunctions.

*/

 

// Get thepreviously created cache

 

web_load_cache("ActionLoad",

   "FileName=c:\\temp\\{VuserName}paycheck",

    LAST );

 

/* From here downis the business process for which

    we want to use a persistent cache */

 

web_browser("signon.html",

    DESCRIPTION,

    ACTION,

   "Navigate=http://myserver:8200/ps/signon.html",

    LAST );

 

web_edit_field("userid",

    "Snapshot=t1.inf",

    DESCRIPTION,

    "Type=text",

    "Name=userid",

    ACTION,

    "SetValue={VuserName}",

    LAST );

 

web_edit_field("pwd",

    "Snapshot=t2.inf",

    DESCRIPTION,

    "Type=password",

    "Name=pwd",

    ACTION,

    "SetValue=HCRUSA_KU0007",

    LAST );

 

lr_start_transaction("login");

 

web_button("SignIn",

    "Snapshot=t3.inf",

    DESCRIPTION,

    "Type=submit",

    "Tag=INPUT",

    "Value=Sign In",

    LAST );

lr_end_transaction("login",LR_AUTO);

 

web_image_link("CO_EMPLOYEE_SELF_SERVICE",

 

    "Snapshot=t4.inf",

    DESCRIPTION,

    "Alt=",

    "Name=CO_EMPLOYEE_SELF_SERVICE",

    "Ordinal=1",

    LAST );

 

web_text_link("Payrolland Compensation",

    "Snapshot=t5.inf",

    DESCRIPTION,

    "Text=Payroll and Compensation",

    "Ordinal=1",

    LAST );

 

web_text_link("ViewPaycheck",

    "Snapshot=t6.inf",

    DESCRIPTION,

    "Text=View Paycheck",

    "Ordinal=1",

    LAST );

 

web_text_link("Signout",

    "Snapshot=t7.inf",

    DESCRIPTION,

    "Text=Sign out",

    "FrameName=UniversalHeader",

    LAST);

 

web_browser("browser",

    "Snapshot=t8.inf",

    DESCRIPTION,

    ACTION,

    "Sync",

    LAST );

 

/* This commandwas used once to create the cache files, then

    commented out for the actually load testing*/

//web_dump_cache("paycheckcache",

       "FileName=c:\\temp\\{VuserName}paycheck",

        "Replace=yes", LAST );

return 0;

 

}

原创粉丝点击