用loadrunner参数化下载的文件名(续下载文件并保存到本地 )

上一篇 / 下一篇  2008-09-11 13:38:43 / 个人分类:转载技术资料

转自wangyong3552128空间

今天看了关河老师的博客一篇《用LoadRunner下载文件并保存到本地》,我很受启发,根据关河老师提供的原创脚本,我把他早博客中没有写出的那部分提供出来“我们希望每次下载保存到本地的文件采用不同的名称,或是希望根据实际文件的后缀名动态生成后缀名”,就是对下载的文件名做参数化操作,也算自己对测试经验的一次积累吧,并且希望想用loadrunner录制下载脚本/参数化文件名称的同学一个很好的学习机会,尽量少走弯路。其实我在这次的编写C脚本中得到一个很大的启发,那就是平时多去学习C语言,多去看lr帮助,多去查看LR函数。

http://www.cnblogs.com/guanhe/archive/2006/06/27/436746.html

我在网上找了一个网站进行录制脚本的,这个网站不做,感觉很适合我连手呵呵:http://www.netqin.com。(里面的软件很适合智能手机哦,包月很便宜的,服务也好!)

根据关河老师的那个脚本,录制/编写完下载的脚本后,就开始参数化那个下载的文件名啦(如果我有这个需求的话)。我尝试过很多方法:

1.对 fopen("c:\\NetQin_P919_CommMaster.SIS", "wb")里的文件名的一部分919,直接在fopen()中进行参数化:fopen("c:\\NetQin_P{随机码}_CommMaster.SIS", "wb"),结果:测试失败。

2.就是使用“设一个数值的变量,然后把它转成字符串,再与前面的字符串连起来”,这里用到了strcat()连接函数。结果:参数设置成功,运行通过。

具体做法:

Action()
{
    int flen;
    long filedes;
    char file[256]="\0";
    char fuzhi[10]="\0";
    char * chNumber=fuzhi;

    chNumber=lr_eval_string("{随机码}");
 
    strcat(file,"c:\\NetQin_P");
    strcat(file,chNumber);
    strcat(file,"_CommMaster.SIS");


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

 //获取响应的全部内容,作为文件内容保存
 web_reg_save_param("fcontent", "LB=", "RB=", "SEARCH=BODY", LAST);

 lr_start_transaction("down");

 web_url("down.jsp",
  "URL=http://www.netqin.com/down.jsp?downID=30&action=Url_1",
  "Resource=1",
  "RecContentType=application/vnd.symbian.install",
  "Referer=",
  "Snapshot=t3.inf",
  LAST);

    //获取响应中的文件长度
 flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);

 if(flen > 0) 
 {
  //以写方式打开文件
  if((filedes = fopen(file, "wb")) == NULL)
  {
   lr_output_message("Open File Failed!");
   return -1;
  }
  //写入文件内容
  fwrite(lr_eval_string("{fcontent}"), flen, 1, filedes);
  //关闭文件
  fclose(filedes);
 }

 lr_end_transaction("down",LR_AUTO);

   // lr_think_time(3);

 return 0;
}

运行结果:在我的机器C盘产生了三个文件(只三个参数哦,迭代三次),NetQin_P110_CommMaster.SIS、NetQin_P112_CommMaster.SIS、NetQin_P113_CommMaster.SIS

提供一个不错的文章去供大家练习字符串的操作:http://www.cnblogs.com/pent/archive/2007/12/17/1003363.html

 

LoadRunner下载文件的实验

http://www.cnblogs.com/pent/archive/2007/09/04/881708.html


TAG: 转载技术资料

csscff的个人空间 引用 删除 csscff   /   2009-05-21 16:45:58
我这样试了,怎么没有动态变化的,在结果中是NetQin_{随机码}_CommMaster.SIS,怎麽会这样的呢??
csscff的个人空间 引用 删除 csscff   /   2009-05-21 16:08:57
我还是失败,不知道错再哪儿,本地文件保存的目录中根本没有新增的文件
 

评分:0

我来说两句

Open Toolbar