admin管理员组

文章数量:1538504

LoadRunner11 HTTP 万能录制法

关键词:LR中你所不知道的录制方法,解决一切在高版本浏览器和手机等环境下的录制

LoadRunner11 太多的环境录制不支持了,因为一些原因由无法安装低版本的环境,甚至被测程序就不支持低版本浏览器,应用只能在手机、微信中打开,那就更没有办法录了。虽然很多人会告诉你,抓包啊,自己写,可惜的是既然问录制,那么肯定是不会写的,短时间内又需要去完成这个任务,没辙啊。

 

LoadRunner12没有免费用的办法啊,怎么玩,50个Vuser完全不够玩,虽然实际上小型的测试是可以满足的,但关键在于设计上不知道怎么去做。

常规录制方法

 

1

直接选择 HTTP/HTML 协议开录,懂的人都知道,这一般来说只对IE浏览器支持,而且在没有补丁的情况下,只能支持IE8

 

2

代理录制方法,这个方式虽然表面满足了远程录制、各种浏览器的录制,但是有一个致命的缺点,当被测站点有多个IP目标时,就傻眼了,直接打不开了,在当今的网站下几乎是没有单IP的网站的,按出浏览器的F12开发工具,网络标签一看就明白

 

3

这里从另一个角度来解决一下这个问题,也就是第3种方案,录制数据包保存后再解析,但要注意的是因为录制角度不同了,所以也会抛弃一些情况,对HTTP的支持是非常好的,但是HTTPS会出现更复杂的问题,无法解析,先避开这个问题,来看看需要什么。

 

我们需要安装一些LoadRunner11补丁和一些其他的工具,先来准备准备,下一次再来真格的,那么具体要的什么呢?

 

首先是LoadRunner11的补丁,没有补丁,什么也做不了,就更不谈后续的内容了,补丁需要安装至patch03,推荐01-04全部装上,一次解决,否则每次安装补丁都需要重新做一次盗版准备了,安装比较缓慢,请耐心等待。

补丁在哪呢?看看这里

云盘地址:

http://pan.baidu/s/1pJ4xa6v

 

再来是其他工具需要什么?

主要缺少的winpcap这个工具,是专门用来抓取系统网卡数据包的,推荐直接安装wireshark,安装时 winpcap会作为附加组件一起安装,但注意安装时的选择,别漏了,安装后需要重启才生效,winpcap属于驱动级软件。

软件材料

LoadRunner 11

winpcap

wireshark

tcpdump(用于其他环境)

打开人见人爱,但又狠的 LoadRunner 11,为什么不是12,懂者自懂,其实在12里面HTTP协议中自带的代理对于HTTP来说还是比较好用的,只要被录制的对象支持设置代理。在这里,我们录制的目标是网卡,整体的方案是录制完数据后进行分析,而且可以多次重复分析,不怕脚本改错了还原不回去,优点当然是无视了一切的环境和客户端,任何浏览器或者程序都跑不掉,缺点当然就是内容太多了……虽然会有一定的过滤但还是不够玩。

 

 

协议选择开始:

 

这里我们要选择的协议不再是常规的 Web(HTTP/HTML)了,而需要换成Moblie App(HTML/HTTP),不要说你找不到,一定就是PATCH补丁没有装。

 

 

这里的录制设置界面不一样,没有出现URL等配置,而是出现了下图的几个选择

 

 

Record and Analyze Traffic:录制并分析

Analyze Traffic: 直接分析

Record Emulator:手机模拟器录制

  

我们主要来看下 Record and Analyze Traffic ,下一个直接分析其实也是包含在里面的,至于模拟器就不在这里讲解了。

 

进入 Record and Analyze Traffic

 

 

注意这里的填写内容比较奇葩,本身来说,host和port是针对远程的监控客户端来使用的,但是我们这里没有提供这样的 Mobile sniffer agent,所以用法上会有很大的差别,即使有 Mobile sniffer agent,手机是需要进行root才能有权限操作的,并不推荐。

 

这里的Host不要去修改,保持 http://localhost,那我们本地没有监控的客户端?没关系。

 

Port在设置的时候,需要设置一个没有被任何程序使用的端口,比如33333。

 

点击 Connect,成功后的场景。

 

 

Connect 可能会出现各种各样的失败

 

如果出现 not found IP address,这个多试几次就好,一般会卡比较久才出现。

 

如果出现 please install winpcap/libpcap 等信息,那么环境缺少winpcap,去装,也可能安装了但没有重启电脑或者winpcap没有权限启动。

 

如果下面 Record network出现的内容和截图中不同,不是Name:\Device\.......GUID,那么设置的端口可能有问题。

 

 

万事俱备后,问题来了,Record network名字太丑,那么多,选哪个?

 

这些Record network都是电脑上的网卡设备,当然里面也有虚拟的,如果安装过虚拟机的电脑就会比较多了。

 

粗暴的选择方案:1个个去尝试……名字后面还是能看到一些提示的。

 

优选方案:打开Wireshark工具,就在初始页就可以看到下图的内容。

 

 

这里的名字明显好看多了,这里的顺序和LoadRunner里显示的是一样的,懂了吧,而且后面的心跳图也就引导了哪个网卡是现在正在使用的,非常方便。

 

 

录制对象找到了,该录了,点击Start Recording,这个时候按钮变成了Stop Recording,说明已经在开始记录数据了,那么赶紧去操作你要录制的内容,不管是什么都会被录进去,全部操作完成后,点击Stop Recording,此时不要着急,稍等一下会弹出一个下载框。

 

 

一定记得将此文件保存,录制抓取的内容都在里面了。

  

下一步,就是分析了。

 

 

Capture:右侧…按钮选择刚才保存下来的pcap后缀的文件。

  

对于数据的过滤有2个选择:

1、可以通过目标服务器的IP和端口来过滤

2、可以通过本机的IP来过滤

  

如果你不知道如何转换成IP,可以用ping来对域名做检测。

 

另一个方法就是使用wireshark打开保存的pcap文件,就可以看到所有的抓包内容了,至于这么去设置过滤可以自由发挥,但缺点就是只能写一个IP,最终完成,只需等待就能看到脚本了,分析是可以重复操作的,比如你要切换录制设置里的脚本类型(HTML BASE or URL BASE)。

  

总体来说,因为录制抓取的是网卡的信息,所以任何的设备、软件只要经过了你的电脑,都是可以录制到的,但要注意的是https因为证书加密的问题,不能直接使用该方式解决问题。

 

 

不在电脑上的录制怎么办?

 

你可以选择使用tcpdump之类的软件进行抓包,保存的文件同样也是pcap;

 

你可以在电脑上使用代理软件,让其他设备连上来;

 

你可以在电脑上使用热点,让手机连接。

 

 

最后需要注意的是,pcap后缀看似相同,其他软件抓到的可能内部结构不同,会导致LoadRunner无法分析,那么需要使用wireshark打开这个怪异的pcap文件,然后另存为Wireshark/tcpdump/… - pcap

 

 

本文标签: 制法http