51Testing软件测试论坛

标题: LR测试下载附件,controller执行的文件一直在替换 [打印本页]

作者: lewtone    时间: 2016-6-28 10:23
标题: LR测试下载附件,controller执行的文件一直在替换
1,写了一个下载附件脚本,代码和网上类似,
2,执行批量跑时候,启动10个vuser,结果文件夹只有10个文件,但是10个文件一直在变化;也就是下载下来了,但是一直在替换,求助!
Action()
{
     int flen;        //定义一个整型变量保存获得文件的大小
     long filedes;    //保存文件句柄
     char file[256]="";  //保存文件路径及文件名
     char * chNumber ;
     int time;


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

        web_reg_save_param("title",
           "LB=<title>",
           "RB=</title>",
           LAST);

        web_reg_save_param("att_id",
                "LB=&att_id=",
                "RB= class",
                LAST);
          

        web_url("bulletin.php",
                        "URL=http://*****?id=75374506&type=1",
                        "Resource=0",
                        "RecContentType=text/html",
                        "Referer=",
                        "Snapshot=t1.inf",
                        "Mode=HTML",
                        LAST);

        web_reg_save_param("filecontent",

          "LB=",
          "RB=",
          "Search=BODY",
          LAST);  //使用关联函数获取下载文件的内容

   
        lr_start_transaction("公告下载");

     web_url("公告下载",

          "URL=http://*****?id=75374506&att_id={att_id}",//下载链接

          "Resource=0",

          "RecContentType=text/html",

          "Referer=",
                 // "Snapshot=t1.inf"
                  "Mode=HTML",

          LAST);


          flen =web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE); //获得下载文件大小

          time=web_get_int_property (HTTP_INFO_DOWNLOAD_TIME);

          chNumber=lr_eval_string("{NewParam}");  //生成随机数
       
          strcat(file,"D:\\javaweb\\");//将下载文件要保存的路径存

          strcat(file,chNumber);//在文件名后自动生成随机数

       
                  strcat(file,".docx");



        if(flen > 0)

         {

            if((filedes = fopen(file,"wb")) == NULL)

             {

              lr_output_message("Open FileFailed!",lr_eval_string("{filecontent}"));

              return -1;

             }

             fwrite(lr_eval_string("{filecontent}"),flen,1,filedes );

             fclose( filedes );

                    }
        
        lr_end_transaction("公告下载", LR_AUTO);


            return 0;
}
作者: jingzizx    时间: 2016-6-29 16:24
使用关联下载,最好自己比较下每次请求返回的值,考虑是不是关联边界造成的,不一定是啊,可以查查看看




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2