51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3105|回复: 1
打印 上一主题 下一主题

[原创] loadrunner录制编写上传文件脚本

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-3-11 14:46:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在使用LR录制脚本过程中,有时可能需要录制上传文件的脚本,下面详细说明一下怎样使用LR工具编写上传文件的脚本。
    首先,使用LR录制完成一份上传文件的脚本。
    其次,对录制完成的脚本进行编辑。下面是笔者在工作中编辑好的上传文件脚本,供大家参考。

Action()
{
      int flen;////定义一个整型变量保存获得文件的大小
    long filedes;///保存文件句柄
    char filename[1024]="\0";////保存文件路径及文件名

        web_set_max_html_param_len("20000");//设置参数的最大长度,注意该值必须大于文件的大小

        lr_think_time(10);
       
        lr_start_transaction("进口汇押登记簿");

  ................................................................
  ................................................................
        lr_end_transaction("进口汇押登记簿", LR_AUTO);

        lr_think_time(10);

        lr_start_transaction("下载");

        //使用关联函数获取下载文件的内容,在这里不定义左右边界,获得服务器响应的所有内容
        web_reg_save_param("fcontent",
                "LB=",
                "RB=",
                "Search=BODY",
                LAST);

        web_url("reportServlet",
                "URL=http://*.*.*.232:9082/UPR/reportServlet?action=4&reportName=report1&isDialog=1&excelFormat=2003",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://*.*.*.232:9082/UPR/irp/rpt/cxreport/report_view.jsp?query=query&params=qry_date={qry_date};dept_no=803000000;&bbid=803_MGR_XT010&corp=803&deptid=803000000",
                "Snapshot=t9.inf",
                "Mode=HTML",
                EXTRARES,
                "URL=reportServlet?action=3&file=803_MGR_XT010.raq&columns=0&srcType=file&width=-1&height=0&reportParamsId={CorrelationParameter_1}&cachedId={CorrelationParameter_2}&t_i_m_e={CorrelationParameter_3}&excelFormat=2003&pageStyle=0&formula=0", "Referer=http://*.*.*.232:9082/UPR/reportServlet?action=4&reportName=report1&isDialog=1&excelFormat=2003", ENDITEM,
                LAST);

        flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);//

        strcat( filename,"d:\\download\\" );////将路径保存到filename变量中
        strcat( filename,lr_eval_string("{filename}") );//根据一定格式生产文件名称,{filename}已经参数化
        strcat( filename,".xls" );//将下载的文件后缀名.xls拼接在filename变量之后

     //到此为止一个LoadRunner已经获得了一个完整的文件名

        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 );

        }

        //lr_message( "************%s*************1",
        //        lr_eval_string("{CorrelationParameter_1}") );
        //lr_message( "************%s*************2",
        //        lr_eval_string("{CorrelationParameter_2}") );
        //lr_message( "************%s*************3",
        //        lr_eval_string("{CorrelationParameter_3}") );

        lr_end_transaction("下载", LR_AUTO);

return 0;
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2013-3-11 14:55:30 | 只看该作者

RE: loadrunner录制编写上传文件脚本

抱歉,以上代码是下载文件的,特此声明。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 16:47 , Processed in 0.071578 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表