首页 > 代码库 > Loadrunner11 录制手机App脚本多种方法介绍

Loadrunner11 录制手机App脚本多种方法介绍

总体来说,通过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)\HP\LoadRunner\bin\wplus_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)\HP\LoadRunner\bin\wplus_init_wsock.exe

 

 技术分享

3.      录制选项的设置:

a.      Capture Level Socket level data

 

 技术分享

b.      New Entry 配置

技术分享

说明: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_init\Action\Vuser_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版本的要安装补丁,补丁是在网上找的。

  1. 手机安装 HP loadrunner mobile recorder ,电脑安装fiddler工具。

  2. 手机wifi和电脑wifi是同一个网段,手机设置用电脑的代理上网,但是其中引进了fiddler工具,不然我设置完之后,没有这个工具的帮助,我设置完之后,手机wifi不能上网。可能是我电脑的端口没有开启,我暂时还不知道如何正确开启。

    下载fiddler工具,我用的版本是这个V4.6.0.2,打开fiddler,工具栏Tools-fiddler options,选项卡 connections,端口填上8888,勾选 allow remote computers to connect

    技术分享

  3. 打开手机wifi,修改wifi网络,代理选手动,代理服务器主机名填写电脑IP,代理服务器端口填写8888.保存,这时你手机wifi可以上网。

     

    技术分享

  4. 打开fiddler,在手机上打开hp loadrunner mobile recorder ,点击start recorder,开始录制,录制结束后点击stop recorder ,导出录制文件,用邮件发送,因为我用QQ发送失败,我还不知道是啥原因。

  5. 打开LR,选择协议 mobile app, 录制模式选择 analyze traffic,下一步如图所示

    技术分享

  6. 录制完成的脚本肯定有很多,可以删除掉无关的脚本,剩下的就是调试脚本跑顺。

 

三、通过安卓模拟器录制

一、前提:
本次记录的前提是要求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:该方式是根据发送的网络数据分析来产生脚本

刚才又试了一下,成功录制,就是电脑相当卡。。附上截图!

技术分享

 

Loadrunner11 录制手机App脚本多种方法介绍