总体来说,通过LR录制手机脚本的方式有三种:
1)通过代理方式录制,保证手机电脑在同一个网段;
2)通过抓包录制,在手机上安装Mobile Recorder;
3)通过安卓模拟器录制,本地安装Android模拟器Emulator (Android SDK)
一、通过代理方式录制
http://jingyan.baidu.com/article/359911f566da0d57fe0306d0.html
当lr11为破解版(不包含Proxy Recorder 代理录制功能,无法使用上面方法录制)
方式1:Web(HTTP/HTML)协议(推荐使用该方法)
1. 说明
目前手机APP上的功能日益丰富,对手机应用功能的性能测试需求也越来越多。公司比较抠门没有花钱买Loadrunner,可怜我们工作中一直用的破解版本,没有Loadrunner11.52以上的版本,不能享受录制手机的便利。只能自己在网上搜罗一些方法,使用Loadruner11.0实现录制手机应用脚本的方法。
以下分笔记本和台式机两种设备介绍使用Loadrunner录制手机端App的方法。
1.1 录制的原理
手机App脚本录制的原理(非正式,仅个人的理解):需要保证手机终端和电脑在公司同一无线网络内,手机终端可以通过代理将请求信息通过电脑进行转发。
1.2必备的软件和设备
1. Loadrunner11.0,wplus_init_wsock.exe文件的地址,如:
C:Program Files(x86)HPLoadRunnerinwplus_init_wsock.exe
2. 公共Wifi 或使用电脑的Wifi(笔记本作为Wifi热点或台式机使用随身Wifi作为热点)
3. 具有无线上网卡的笔记本或台式机(台式机可使用随身Wifi作为无线上网卡)
4. Android或iPhone手机
5. 需要进行测试的server地址(我实际测试的是公司内部环境的APP server地址,这里就直接换作csdn好了,我直接用浏览器访问的。)
如:www.csdn.NET
2、笔记本
2.1 笔记本的设置
1. 笔记本需要连接上公共Wifi 如OFFICE-Adviser
2. 获取本地连接IP
网络连接中有无线网络IP,请忽略,需要使用本地lP,如下
2.2 Loadrunner的设置
1. 录制时选择协议Web(HTTP/HTML):
2. 在开始录制时的配置:
其中Program torecord选择之前获取的wplus_init_wsock.exe文件的地址,如:
C:Program Files(x86)HPLoadRunnerinwplus_init_wsock.exe
3. 录制选项的设置:
a. Capture Level Socket level data
b. New Entry 配置【Target Server 要设置为目标网址】
说明:
①Taregt Server为需要录制的地址,Port设置为80
②Traffic Forwarding 为代理转发的IP,需要与手机端设置一致,设置为本机不冲突的端口即可,如2008
4. 配置完成后保存即可
2.3 手机端的设置
手机端设置:
1. 连接上公共Wifi如 OFFICE-Adviser
2. 设置wifi代理如下:
其中IP为笔记本IP,代理端口为Loadrunner设置的代理转发端口号:
2.4 使用LR开始录制脚本
1. 点击Start Recording页面的OK可以开始录制:
在手机App页面进行操作,可以看到以下内容,需要录制哪些页面操作对应的功能就可以了:
如下,啦啦啦,表示录制成功啦~~~
以下是用公司内部APP环境地址成功录制的截图:
失败的情况示例,可能原因是代理没有设置:
(因公司内网限制,我无法在手机上访问csdn地址。。)
2. 如下,可以看到配置在录制选择中的代码程序也正在运行,录制完成之后关了就可以了
就是它了:
3、台式机
台式机基本步骤与笔记本一样,只是需要有无线网卡(实际上只要手机和电脑在一个网段即可),这里就介绍怎么使用随身Wifi这个神器来完成这个工作了~
1. 网上买一个随身wifi,我买的是个百度出的小度wifi。(悲剧的是它的内心是小米的。。。用小米的驱动才能用,我也不知道为什么)。
2. 插上就可以用啦~
3. 使用网卡模式,连接上公共Wifi OFFICE-Adviser
4、附录
4.1参考网页列表
1. 利用loadrunner代理方式,录制手机APP脚本(loadrunner12等包含Proxy Recorder 代理录制功能)
http://jingyan.baidu.com/article/359911f566da0d57fe0306d0.html
2. 与1对应的网页有惠普官方网站的解释:
http://h30499.www3.hp.com/t5/HP-LoadRunner-and-Performance/Recording-HTTP-traffic-on-iOS-devices-with-HP-LoadRunner/ba-p/6582844#.VcHcevncfln
根据官网中的说明,因为Proxy Recorder 代理录制功能是从Loadruner 11.52版本才开始有的,我们目前使用的是破解版本的11.0,暂时不支持这个功能
方式2:Mobile App(HTTP/HTML)协议
要使用Loadrunner11录制手机脚本,需要先搭建好测试环境:
能够正常使用的LoadRunner11;
安装一个LR11的补丁包,用于手机录制;
pc端和手机端的网络在同一个网段。
这里特别说明一下,电脑需要可以提供热点(用于手机连接),如果是台式电脑不能提供热点,那么可以使用随身WIFI。笔记本电脑可以通过安装360免费WiFi等来达到提供热点的目的。
【测试环境准备】
第一步:安装LR11
第二步:安装LR11录制手机脚本补丁包,qfelr11patch4.msp,下载好之后,直接点击安装,没有特别的要求。
第三步:如果在新建脚本页面,看到Mobile App(HTTP/HTML),表示补丁包成功安装。
【测试demo】
第一步:新建一个“Mobile App(HTTP/HTML)”协议的脚本;
第二步:点击 ,选择录制模式:选择“Record and Analyze”,如下图中的第一个,点击【下一步】;
注:此处选择3recording wizard,可以使用安卓模拟器的方法进行录制,具体见方法三
第三步:Host URL填写“http://localhost”,Port为一个端口号,需要使用本机目前未被占用的端口号,点击【Connect】。PS:可以使用命令行“netstat”查看未被占用端口。
第四步:选择Record network,可以看到Record network有多个,根据每台电脑不同,需要选择的也不同,只能通过每个都进行录制一下来选择对应的,我的电脑是第三个。
第五步:选择Record into,Vuser_initActionVuser_end三选一,一般选择Action,根据具体情况而定。
第六步:电脑放出热点,确保手机连接的是电脑的这个热点,并且只有要这台手机连接这个热点!!
第七步:点击【Start Recording】之后,Recording的状态变为Stop Recording状态,就可以开始进行要手机操作了。
第八步:要录制的手机操作结束之后,点击【Stop Recording】,然后电脑会弹出一个抓取的数包,将其保存。
第九步:点击【下一步】,Capture 处选择刚才保存的pcap文件,IP Host处填写手机此时的IP地址,这个需要在手机里查看,并且确保正确!
第十步:点击【完成】,这是就会自动生成LR脚本了,如果此时录制的脚本为空,那可能是Record network选择错了,重新回到第四步,选择另一个网络,直到录制脚本不为空!
二、通过抓包录制
准备工具:HP loadrunner mobile recorder、 fiddler 、lr11.04版本,lr11版本不支持手机录制,如果是11版本的要安装补丁,补丁是在网上找的。
-
手机安装 HP loadrunner mobile recorder ,电脑安装fiddler工具。
-
手机wifi和电脑wifi是同一个网段,手机设置用电脑的代理上网,但是其中引进了fiddler工具,不然我设置完之后,没有这个工具的帮助,我设置完之后,手机wifi不能上网。可能是我电脑的端口没有开启,我暂时还不知道如何正确开启。
下载fiddler工具,我用的版本是这个V4.6.0.2,打开fiddler,工具栏Tools-fiddler options,选项卡 connections,端口填上8888,勾选 allow remote computers to connect
-
打开手机wifi,修改wifi网络,代理选手动,代理服务器主机名填写电脑IP,代理服务器端口填写8888.保存,这时你手机wifi可以上网。
-
打开fiddler,在手机上打开hp loadrunner mobile recorder ,点击start recorder,开始录制,录制结束后点击stop recorder ,导出录制文件,用邮件发送,因为我用QQ发送失败,我还不知道是啥原因。
-
打开LR,选择协议 mobile app, 录制模式选择 analyze traffic,下一步如图所示
-
录制完成的脚本肯定有很多,可以删除掉无关的脚本,剩下的就是调试脚本跑顺。
三、通过安卓模拟器录制
一、前提:
本次记录的前提是要求LR11安装mobile协议补丁,并再次破解,以下附上方法:
1)安装LR11;
2)安装补丁:LR_app补丁并再次破解LR;下载地址:http://pan.baidu.com/s/1sjwWlbv(安装完之后版本号应该是11.04)
安装之后可以看到协议中已包含mobile http;
二、录制方式
总体来说,通过LR录制手机脚本的方式有三种:
1)通过安卓模拟器录制;
2)通过抓包录制;
3)通过代理方式录制;
(一) 通过安卓模拟器录制1)首先通过eclipse安装安卓虚拟机(这个就不赘述啦,不懂得童鞋请自行百度!)
这里记录下如何通过虚机安装app:
1.platform-tools目录下新建文件夹newapk,把下载的apk文件放进去,该文件就是即将要安装的apk文件。
2.执行控制台命令,进行安装。点击开始→运行,输入cmd,打开cmd窗口。切换到D盘,输入D:,然后点击Enter,即切换到D盘,
输入cd,找到platform-tools的文件地址,即adb.exe的文件路径。(可以通过文件搜索adb.exe 或者platform-tools查找到),粘贴在控制台中。
3.执行安装文件的命令:命令为:adb install apk文件路径和地址如下图示:
2)打开LR,选择mobile app协议,点击create
3) 点击start record按钮,选择第三种方式
4.Emulator to里选择模拟器中tools目录下的emulator.exe的路径;
command line中写@模拟器名字,如:@Galaxy
working不需要说啦,填写文件保存路径
点击完成,开始录制!
PS:该方式是根据发送的网络数据分析来产生脚本
刚才又试了一下,成功录制,就是电脑相当卡。。附上截图!