三思而后行

Loadrunner 下载文件到本地

上一篇 / 下一篇  2009-05-05 17:33:03 / 个人分类:Loadrunner

背景:

因为要将bug的附件从一个bugzilla系统转移到另外一个bugzilla系统,因此会出现如下场景:

当点击页面上的链接的时候,会打开一个网页,或者会弹出保存对话框,下面是将这页面的内容保存到本地的方式。

参考书《软件性能测试与loadRunner实战》

实现原理:对HTTP协议来说,无论是下载文件或者请求页面,都只是发出一个GET请求,Loadrunner记录了客户端发出的对文件的请求,并能够收到文件内容。因此可以通过loadrunner的文件操作方法,自行生成文件。fopen,fwrite,fclose。

实现方式:将如下代码加入action中即可

int flen; //文件大小

long lfbody; //相应数据内容大小

web_reg_save_param("fcontent", "LB=", "RB=", "SEARCH=BODY", LAST);
filename=lr_eval_string("{FilePath}");
web_link("附件名称",
  "Text=附件名称",
  "Snapshot=t3.inf",
  LAST);
flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);     
if (flen >0 )
  {
    if((lfbody = fopen(filename, "wb")) == NULL)
              {
                     lr_output_message("文件操作失败!");
                     return -1;
              }
    fwrite(lr_eval_string("{fcontent}"), flen, 1, lfbody);
    fclose(lfbody);
   }

 

后记:若要实现将bug的转移,可以通过直接对数据库进行操作来实现完全自动化。

 


TAG:

引用 删除 silence911   /   2011-06-02 10:29:24
5
 

评分:0

我来说两句

Open Toolbar