在某次压测时,用loadrunner12生成的脚本,在loadrunner11中进行运行,发现某个js请求返回的大小在loadrunner 12是600多K,loadrunner 11是2M多。通过抓包获取到请求头略有不同:
loadrunner11发送请求时默认的
user-agent:Mozilla/4.0(compatible;MSIE 6.0; Windows NT)
loadrunner12发送请求时默认的
user-agent:Mozilla/5.0(Windows NT 6.1) AppleWebKit/537.36(KHTML,like Geoko) Chrome/63.0.3239.132 Safari/537.36
在loadrunner11中将user-agent的版本进行修改(两种方式):
1)通过添加web_add_header("user-agent","user-agent:Mozilla/5.0(Windows NT 6.1) AppleWebKit/537.36(KHTML,like Geoko) Chrome/63.0.3239.132 Safari/537.36")类似内容进行修改头信息;
2) 在运行时代理中进行设置run-time settings --->Browser--->Browser Emulation--->User-Agent,修改use-agent信息
如上方式修改后重新运行,返回的大小和loadrunner12一致了。
为什么会产生这种现象呢,发现请求中是支持压缩格式的
而本次项目中nginx负载均衡是开启了压缩的,经确认参数中有gzip_disable "MSIE [1-6]\."。即UA头中有MSIE1~MSIE6的不使用gzip压缩,所以使用loadrunner11默认头信息,返回的不是压缩文件。
因为该请求头的不同会引起服务器端的流量消耗有较大差异,在测试过程中还是需要注意的。