LR11.5 安卓模拟器性能测试

上一篇 / 下一篇  2013-07-04 08:07:19 / 个人分类:相关知识

1.首先下载安卓模拟器

http://www.kuaipan.cn/file/id_12631777990415718.htm

以上地址是已经配置好的安卓模拟器,可以直接使用。(PS: 需有金山快盘账号,因为文件比较大160M左右,请耐心下载)

2.下载完成解压后,可通过运行AVD来打开已经配置好的模拟器选择相应的模拟器或者直接运行tools 目录下的emulator.exe 来启动。如下图

3.当然这里面我们为了能够让LR录制到模拟器中手机操作的通信数据,不要在这个地方启动,我们通过下面LR录制选项来进行。

这里要选择Mobile Application - HTTP/HTML 协议。

3.选择record

这里选择第三个选项Record Emulator

4.选择下一步后,在如下界面中一定要选择tools目录下的emulator.exe

comand line填@Test或者直接在上面emulator.exe 后面加也行。Test是创建的模拟器的名称,如果你在AVD中新建了其它模拟器,改成相应的名称即可。

5.点finish就OK了,稍后会启动模拟器。这里注意因为当前使用的是mobile http/html协议,LR不会录制对模拟器的操作,而只会根据发送的网络数据分析来产生脚本。所以不必担心。

6.打开浏览器输入百度地址,停止录制,模拟器则会生成如下代码。

C代码

1 Action()

2 {

3    lr_start_transaction("Search_Baidu");

4     web_url("www.baidu.com",

5

6         "URL=http://www.baidu.com/",

7         "Resource=0",

8         "RecContentType=text/html",

9         "Referer=",

10         "Snapshot=t8.inf",

11         "Mode=HTML",

12         EXTRARES,

13         "Url=/static/index/innovation/cache.manifest", "Referer=", ENDITEM,

14         "Url=http://m.baidu.com/static/index/i.gif", "Referer=", ENDITEM,

15         "Url=http://m.baidu.com/static/tj.gif?prod=default&type=loadpagetime_2981&time=1353480543397&from=index", ENDITEM,

16         "Url=http://m.baidu.com/static/tj.gif?prod=default&type=pv&pt=index&time=1353480543680&from=index", ENDITEM,

17         "Url=http://m.baidu.com/static/hb/hot.gif", "Referer=", ENDITEM,

18         "Url=http://a.m.baidu.com/rtstatic/index?&module=index&session=baiduapp&item=show", ENDITEM,

19         "Url=/favicon.ico", ENDITEM,

20         LAST);

21    lr_end_transaction("Search_Baidu", LR_AUTO);

22

23     return 0;

24 }

相信到这里,进行后面的操作也就不困难了。

第一篇我们介绍了如何通过LR来捕获手机发出的真实访问数据,这一篇我们将介绍捕获数据之后的操作。

接第一篇:

1. 用wireshark 捕获手机访问的数据后,可以根据协议来筛选仅HTML或者不筛选让LR自己分析。选择另存将wireshark 获取的数据包保存为.pcap格式。

2. 打开LR11.5(至少是以上版本才支持此协议)。选择 mobile http/html协议。

2.选择录制

3.选择导出的.pcap文件,并选择第二项,通过分析数据以生成脚本,其它用默认即可。

4.导入后我们来看一下生成的脚本代码

Action()

{

web_add_cookie("QN48=tc_f39fc2c153a007a1_13c29f5c48b_90e7; DOMAIN=touch.qunar.com");

web_add_cookie("QN1=wKgZEVDwHiZ0pjsMBcTaAg==; DOMAIN=touch.qunar.com");

web_add_cookie("QN48=tc_f39fc2c153a007a1_13c29f5c48b_90e7; DOMAIN=bc.qunar.com");

web_add_cookie("QN1=wKgZEVDwHiZ0pjsMBcTaAg==; DOMAIN=bc.qunar.com");

web_url("touch.qunar.com",

"URL=http://touch.qunar.com/",

"Resource=0",

"RecContentType=text/html",

"Referer=",

"Snapshot=t1.inf",

"Mode=HTML",

EXTRARES,

"Url=http://bc.qunar.com/wap?utmwv=0.1&t=0.7578790553379804&utmsr=720*1280&utmr=-1&utmp=http%3A%2F%2Ftouch.qunar.com%2F&utmhn=touch.qunar.com&s=266&a=tw_index", ENDITEM,

LAST);

web_link("SelectFlight",

"Text=SelectFlight",

"Snapshot=t2.inf",

EXTRARES,

"Url=http://bc.qunar.com/wap?utmwv=0.1&t=0.4847093583084643&utmsr=720*1280&utmr=http%3A%2F%2Ftouch.qunar.com%2F&utmp=http%3A%2F%2Ftouch.qunar.com%2Fflight.jsp%3Fbd_source%3Dqunar%26backUrl%3D%252F&utmhn=touch.qunar.com&s=254&a=tw_flightIndex", "Referer=http://touch.qunar.com/flight.jsp?bd_source=qunar&backUrl=%2F", ENDITEM,

"Url=/filghtCitySuggest.jsp?city=%25E4%25B8%258A%25E6%25B5%25B7&_=1357913752957", "Referer=http://touch.qunar.com/flight.jsp?bd_source=qunar&backUrl=%2F", ENDITEM,

"Url=/filghtCitySuggest.jsp?city=%25E6%25AD%25A6%25E6%25B1%2589&_=1357913758311", "Referer=http://touch.qunar.com/flight.jsp?bd_source=qunar&backUrl=%2F", ENDITEM,

LAST);

web_add_cookie("QN48=tc_f39fc2c153a007a1_13c29f5c48b_90e7; DOMAIN=source.qunar.com");

web_add_cookie("QN1=wKgZEVDwHiZ0pjsMBcTaAg==; DOMAIN=source.qunar.com");

web_url("flightList.jsp",

"URL=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%e6%88%90%e9%83%bd&destCity=%E6%AD%A6%E6%B1%89",

"Resource=0",

"RecContentType=text/html",

"Referer=http://touch.qunar.com/flight.jsp?bd_source=qunar&backUrl=%2F",

"Snapshot=t3.inf",

"Mode=HTML",

EXTRARES,

"Url=http://bc.qunar.com/wap?utmwv=0.1&t=0.8687613171059638&utmsr=720*1280&utmr=http%3A%2F%2Ftouch.qunar.com%2Fflight.jsp%3Fbd_source%3Dqunar%26backUrl%3D%252F&utmp=http%3A%2F%2Ftouch.qunar.com%2FflightList.jsp%3FstartDate%3D2013-01-13%26backDate%3D2013-01-16%26flightType%3DoneWay%26bd_source%3Dqunar%26backUrl%3D%252Fflight.jsp%253FbackUrl%253D%25252F%2526bd_source%253Dqunar%26startCity%3D%25E4%25B8%258A%25E6%25B5%25B7%26destCity%3D%25E6%25AD%25A6%25E6%25B1%2589&utmhn=touch.qunar.com&s=255&a="

"tw_flightList", "Referer=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%e6%88%90%e9%83%bd&destCity=%E6%AD%A6%E6%B1%89", ENDITEM,

"Url=http://source.qunar.com/site/images/wap/touch/images/sp.v.png", "Referer=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%E4%B8%8A%E6%B5%B7&destCity=%E6%AD%A6%E6%B1%89", ENDITEM,

"Url=http://source.qunar.com/site/images/wap/touch/images/icon.r.png", "Referer=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%E4%B8%8A%E6%B5%B7&destCity=%E6%AD%A6%E6%B1%89", ENDITEM,

"Url=http://source.qunar.com/site/images/wap/touch/images/icon.top.png", "Referer=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%E4%B8%8A%E6%B5%B7&destCity=%E6%AD%A6%E6%B1%89", ENDITEM,

"Url=http://source.qunar.com/site/images/wap/touch/images/icon.asc.png", "Referer=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%E4%B8%8A%E6%B5%B7&destCity=%E6%AD%A6%E6%B1%89", ENDITEM,

LAST);

return 0;

}

5.通过以上我们可以看出生成的脚本是基于手机版的,去哪网的数据。

如果你对lr 操作比较了解的话,上面一步之后可能就会想到参数化,如果在尝试后可能就会发现有一个问题出现。如:

url=http://touch.qunar.com/flightList.jsp?startDate=2013-01-13&backDate=2013-01-16&flightType=oneWay&bd_source=qunar&backUrl=%2Fflight.jsp%3FbackUrl%3D%252F%26bd_source%3Dqunar&startCity=%e6%88%90%e9%83%bd&destCity=%E6%AD%A6%E6%B1%89",

通过观察我们知道这里面提交数据是通过get方式,URL传递数据的,所以在参数化的过程中需要对这里面的参数进行修改。

日期和单程往返都很好操作,问题是出发地点和目的地中文是经过编码的,这个时候怎么办呢?

几种办法解决:

1.最好是自己编写中文转utf-8的dll加载,是最好的方式。

2.如果借助其它工具好编码后,填在参数表里面。

下面我们来看一下借助工具解码后,上面URL中所包含的信息

到这里相信大家知道怎么在这种情况下对此进行参数化了。

下面我们来看一下手动关联后的脚本情况:

最好不要用自动关联,虽然LR11.5已经准确了不少,但还是会出现截取不准确的情况。

C代码

1 <span>Action()

2 {

3 char  DistrictName[15]={NULL},

4         CityCode[20]={NULL},

5         ProvinceCode[20]={NULL},

6         DistrictCode[20]={NULL};

7 int     DistrictSequence=0;

8 web_add_cookie("JSESSIONID=6B75C5017659AA3BFB2C89746A16D20F; DOMAIN=m.weathercn.com");

9 </span>

type url,the default city code is shanghai, you can parameterize it

这里默认定位是上海,可通过后面的关联将省代码获取到,然后进行参数化避免每次打开都是上海C代码

10 <span style="font-family: 'Microsoft YaHei',微软雅黑,SimHei,tahoma,arial,helvetica,sans-serif;">web_url("m.weathercn.com",

11         "URL=http://m.weathercn.com/?cid=01012601",

12         "Resource=0",

13         "RecContentType=text/html",

14         "Referer=",

15         "Snapshot=t1.inf",

16         "Mode=HTTP",

17         LAST);

18

19 </span>

C代码

20 <span>

21 /*select province*/

22

LR11.5 安卓模拟器性能测试的更多相关文章

  1. 安卓模拟器genymotion连接eclipse成功但是不显示其中项目

    安卓模拟器困了我两三天了,原装模拟器比较慢,忍受不了,查到安卓模拟器的神器——genymotion 按照网上的步骤一步步都安装完毕,最后打开后发现,genymotion界面里面没有找到新建的工程, 这 ...

  2. 超简单,安卓模拟器手动root

    本文转载自:http://quantoubao.blog.163.com/blog/static/2083211702013870501987/ 安装Android SDK安卓模拟器的方法很简单,网上 ...

  3. 安卓模拟器的报错This AVD's configuration is missing a kernel file!!

    安卓模拟器的报错: 可能的原因是target设置问题:

  4. Android Studio 1.0.1 + Genymotion安卓模拟器打造高效安卓开发环境

    我们开发安卓大多是使用Eclipse和安卓SDK中自带的安卓模拟器.当然,Google早就推出了自己的安卓开发环境——Android studio,在不久前,Google发布了Android Stud ...

  5. [Android] 安卓模拟器临时文件相关问题

    今天生产环境有台机器的硬盘满了,排查发现我的模块在/tmp/android-username目录下留了一堆形如“emulator-1tpH5l”的文件,占用了很大的空间. 这个模块会反复启停好几个安卓 ...

  6. 运行最快的安卓模拟器VirtualBox安装教程

    网上有多种多样的安卓模拟器,蓝手指啊,百度的MTC等等,但是他们的运行速度,与电脑的切合度都没有VirtualBox安装Android-X86结合在一起来的快. 工具/原料 电脑一台 网络 方法/步骤 ...

  7. Visual Studio 2015 预览版 - 支持跨平台开发Android/iOS应用程序(内置安卓模拟器)

    微软最近的惊人举动真多,对普通消费者Office 移动版宣布免费,对开发者也发布了完全免费的 VS2013 社区版! 不仅如此,就连 .Net 开发框架环境也竟然「开源」并且跨平台支持 Mac 及 L ...

  8. 安卓模拟器安装apk,上网

    1.首先找到安装安卓模拟器的文件夹: 2.目录:D:\Java\Android-all\platform-tools 3.运行cmd命令:adb install D:\Java\Android-all ...

  9. 安卓模拟器BlueStacks 安装使用教程(图解)

    系统要求 操作系统 Win XP SP3/Vista/Win 7/Win 8/Win 8.1 所需的运行环境 Win XP用户请先升级到SP3 并安装Windows Installer 4.5 Win ...

随机推荐

  1. Linux基础系列-Day9

    算术运算符 设置变量a=10,b=4 + 加法 [root@localhost ~]# echo $[$a+$b] 14 - 减法 [root@localhost ~]# echo $[$a-$b] ...

  2. ASP.NET总结——更改后

    这篇重新整理的总结,我做了很久,也在草稿箱中放了很久,一直感觉没有达到和老师谈话后的水平,感觉还是需要增加一些修改,希望读者能提出宝贵意见.既这篇博客之前,我发表了一篇ASP.net的总结,在结构上, ...

  3. [BZOJ1860][ZJOI2006]Mahjong(DP)

    1860: [Zjoi2006]Mahjong麻将 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 412  Solved: 248[Submit][Sta ...

  4. AtCoder - 4162 Independence

    Problem Statement In the State of Takahashi in AtCoderian Federation, there are N cities, numbered 1 ...

  5. [ARC057D]全域木

    题意:求有多少个边权为$1\cdots\frac{n(n-1)}2$的完全图的最小生成树的边权为$a_{1\cdots n-1}$ 啊啊啊我tm真的是什么都不会啊 考虑kruskal的过程:每次选取跨 ...

  6. 20162307 实验三 敏捷开发与XP实践

    实验三 <敏捷开发与XP实践> 北京电子科技学院(BESTI) 实 验 报 告 课程:程序设计与数据结构 班级:1623 姓名:张韵琪 学号:20162307 指导教师:娄佳鹏老师.王志强 ...

  7. SharpICTCLAS分词系统简介

    SharpICTCLAS分词系统简介(4)NShortPath-1http://www.cnblogs.com/zhenyulu/articles/669795.html SharpICTCLAS 1 ...

  8. Android网络通信框架LiteHttp2.0 开篇简介和大纲目录

    本帖最后由 移动天宇 于 2015-10-26 10:42 编辑 LiteHttp2.0很多东东焕然一新,旧的能力也得到增强,没有使用的同学来了解一下吧. Android网络框架为什么可以选用lite ...

  9. 【JSP JSTL】<c:if>多个判断条件 + <c:foreach>满足条件跳出循环

    有一个需求,将所拥有的权限存放于session中,现在JSP页面判断这些如果在所有权限中有某一个或者某几个,就显示相对应的页面内容 举一个例子,实现以上的逻辑,<c:if>多个判断条件 + ...

  10. [Git] git shortlog 找出最懒的程序员

    转载:http://blog.csdn.net/qinjienj/article/details/7795802 场景假设:一个开发小组有10个程序员,他们用 Git 做版本控制,某一天程序员A pu ...