LoadRunner测试下载功能点脚本(方法二)

2018-05-03  本文已影响15人  Root_123

在上一篇《LoadRunner下载功能点脚本(方法一)》中,实现的脚本仅是录制下载功能点的脚本,现在性能需求的场景更改如下:

性能需求:对系统某页面中,点击下载并将下载文件保存到本地电脑的功能做并发测试,以获取在并发下载文件的情况下系统的性能指标。

我们知道,LoadRunner录制的脚本是根据协议启用代理模拟浏览器发送请求,记录对服务器响应的相关数据,因此,保存下载文件需要手动编写代码插入在下载脚本前后。

代码如下:

download()

{

    //文件大小int flen;

    //响应数据内容大小long  filedes;

    //文件名charfilename[1024];

    //设置页面接受最大的字节数,该设置应大于下载文件的大小 web_set_max_html_param_len("1024000");

    //将响应信息存放到fcontent变量web_reg_save_param("fcontent",

        "LB=",

        "RB=",

        "Ord=1",

        "Search=Body",

        LAST);

    lr_think_time(3);

    lr_start_transaction("download");

    web_url("forum.php_6",

        "URL=http://127.0.0.1/Discuz/upload/forum.php?mod=attachment&aid=M3xlZDM3YzJhMXwxNDQzODQxMjI3fDN8NA%3D%3D",

        "Resource=0",

        "RecContentType=application/octet-stream",

        "Referer=http://127.0.0.1/Discuz/upload/forum.php?mod=viewthread&tid=4&extra=page%3D1",

        "Snapshot=t7.inf",

        "Mode=HTML",

        LAST);

    lr_end_transaction("download",LR_AUTO);

    //获取响应的全部内容,作为文件内容保存flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);

    //生成随机的文件名称,便于并发strcpy(filename,"d:\\test\\邮购订单_");

    strcat(filename,lr_eval_string("{Num}"));

    strcat(filename,".PDF");

    if(flen >0){

        //以写方式打开文件  if((filedes = fopen(filename,"wb")) == NULL){

            lr_output_message("Open File Failed!");

            return-1;

        }

        //写入文件内容fwrite(lr_eval_string("{fcontent}"), flen,1, filedes);

        //关闭文件        fclose(filedes);

    }

    return0;

}

此时,回放脚本后,发现在本地电脑D:\test目录下生成下载文件,如图:

上一篇下一篇

猜你喜欢

热点阅读