在进行压力测试过程中,经常会涉及到下载文件并保存的过程。至于如何用LoadRunner来实现,网上的资料很多,但是方法都一样的。大体的逻辑如下:
1.用web_reg_save_param函数获取所有的返回内容
2.用web_get_int_property函数拿到服务器返回的大小
3.用fwrite函数将数据流写入到指定目录的文件中。
详细代码如下:
于是我也copy了下,这个脚本下载了搜狗浏览器,并保存到本地。运行一下,坐等下载结果。
咦?报错了,看了下,原来是设置的下载超时时间太短,实际下载时间超过120s了。果断打开配置改了下。
... ...
查看全文内容,请点击下载:http://www.51testing.com/html/65/n-3704165.html
发现前面所有的数据都一样,只是LR下载的包最后多加了一些空字符。于是可以定位,是fwrite函数中传的文件长度长了。
看下脚本:
flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);
难道是这个长度获取的长了?
到网上查了下,原来HTTP_INFO_DOWNLOAD_SIZE是计算body和header的大小。咱们需要的只是body,原来如此~~~
既然这个函数统计的结果不准确,只能重新找方法统计大小了。
于是想到了LR还有一个函数可以自己计算大小:web_save_param_length()
重新修改了下脚本:
... ...
查看全文内容,请点击下载:http://www.51testing.com/html/65/n-3704165.html
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。