![精通移动App测试实战:技术、工具和案例](https://wfqqreader-1252317822.image.myqcloud.com/cover/623/22691623/b_22691623.jpg)
1.6 创建模拟器
在我们日常进行自动化测试脚本开发时,会经常调试测试脚本,既可以在实际的物理手机设备上进行调试,也可以通过创建一个或者多个手机设备模拟器来进行调试。
创建模拟器的方法有很多,既可以通过Eclipse的工具条按钮创建,也可以直接启动AVD Manager创建,还可以通过命令创建,这几种方式都可以。
如图1-32所示,单击Eclipse工具条的“手机”图标或者选中“Window >Android Virtual Device Manager”菜单项,也可以直接双击Android SDK目录下的“AVD Manager.exe”文件,都能启动“Android Virtual Device(AVD)Manager”应用,如图1-33所示。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0026_0002.jpg?sign=1739278799-b7SSTz95w4grgYwstyFo9nJ1u8MFUZWK-0-7870a0f6b7f6bc682408bd85219a396f)
图1-32 Eclipse工具条相关信息
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0027_0001.jpg?sign=1739278799-GbRGhQsDifvp9I1dKC7MywiKQ68Vg7l2-0-dd096b6004d84eda31a84b99e7b5e7e3)
图1-33 “Android Virtual Device(AVD)Manager”应用界面信息
单击“Create…”按钮,将弹出图1-34所示对话框。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0027_0002.jpg?sign=1739278799-ryarBmwD7luMlpGE3i6nFJUVkDncVw7t-0-cfe633ba7808c215f94d94001f13c697)
图1-34 “Create new Android Virtual Device(AVD)”对话框信息
这里,我们要创建一个名称为“Galaxy_Nexus_4.4.2”的安卓虚拟设备,依次在对应的界面输入或者选择如下信息,如图1-35所示。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0028_0001.jpg?sign=1739278799-IIr08g0FnEITqIqXeQ4QIgWGAyq4MW1R-0-97331fc2fa16d9a8c539b57d3db005b2)
图1-35 “Galaxy_Nexus_4.4.2”模拟器相关配置信息
下面对图1-35所示的相关信息项进行讲解。“AVD Name”表示安卓虚拟设备名称,也就是我们的模拟器名称,这里我们给其命名为“Galaxy_Nexus_4.4.2”。大家在起名字的时候,最好使模拟器的名称有意义并和后续设备对得上,同时最好能够将模拟器应用的系统版本标示出来,这样看起来就一目了然了。“Device”表示设备,我们从其下拉列表框中选择“Galaxy Nexus (4.65'',720 x 1280:xhdpi)”,代表设备的型号是“Galaxy Nexus”,而括号内部的“(4.65'',720 x 1280:xhdpi)”,表示手机主屏幕大小为4.65英寸,主屏分辨率为720 x 1280像素。“Target”表示Android系统的版本信息和对应的API版本号,“Android 4.4.2 - API Level 19”中“-”前面的信息即为Android系统版本信息,而后面的是API的版本号。“CPU/ABI”表示应用处理器的型号信息,列表框提供了目前的两款主流处理器型号,即ARM (armeabi-v7a)和Intel Atom (x86)。“Keyboard”表示键盘,后面的复选框“hardware keyboard present”表示是否支持硬件键盘。“Skin”英文的原意是皮肤的意思,在这里表示模拟器外观和屏幕尺寸,其下拉列表框提供了一些不同屏幕分辨率,如HVGA、QVGA、WVGA等选项,这些术语都是指屏幕的分辨率。“Front Camera和Back Camera”表示前、后置摄像头,有的时候我们要模拟它。若要选择前置摄像头“Front Camera”,请在下拉框中选择“Webcam0”,其会调用电脑的摄像头;而后置摄像头则选择下拉框的任意一项即可。我们可以根据想要的效果来进行设置。“Memory Options”表示内存选项,“RAM:1024”表示其有1GB的内存,RAM(Random Access Memory,随机存取存储器,又称作“随机存储器”)是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中程序的临时数据存储媒介。Android系统是运行在Dalvik虚拟机上的,“VM Heap”就是指虚拟机最大占用内存,也就是单个应用的最大占用内存,这里其值为64,代表64MB。“Internal Storage”表示内部存储,即手机自带存储大小为200MB,内部存储就是将数据保存在设备的内部存储器中。“SD Card”表示SD卡的大小,其单位默认也是MB,当然如果我们需要选择其他存储单位,也可以从下拉列表中进行选择。单击“OK”按钮,对上述设置进行保存,则创建了一个名称为“Galaxy_Nexus_4.4.2”的模拟器,如图1-36所示。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0029_0001.jpg?sign=1739278799-yAat71DSEGPwMMQIVJIs0H0oL7MxQWeS-0-ce51de4eb73d3eb1e54363c17606742c)
图1-36 “Galaxy_Nexus_4.4.2”模拟器相关信息
我们可以根据自己的需要添加多个模拟器设备,关于如何使用模拟器设备这里想和大家一起来分享一下。
(1)模拟器在我们没有物理手机设备时,对调试测试脚本程序非常有帮助;
(2)模拟器的执行效率要比同配置的真实手机设备低;
(3)模拟器因为其相关的参数可配置,所以可以模拟操作系统版本的升级情况;
(4)模拟器因为其相关的参数可配置,所以建议大家执行测试脚本用例时可以在低版本的系统测试其兼容性问题;
(5)模拟器和真实的物理设备还是有差别的,所以强烈建议大家在做实际的自动化测试时还是要用真实的物理设备。
前面我们建立了一个模拟器,下面将给大家讲解,如何来启动这个模拟器。
首先,在“Android VirtualDevices”列表中,选择我们刚才建立的“Galaxy_Nexus_4.4.2”模拟器,然后单击“Start…”按钮,如图1-37所示。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0029_0002.jpg?sign=1739278799-41aByEOokfLSbdbYuIgT1Lm8VaciRjGP-0-0694596e6426359db95c684293121e4b)
图1-37 “Galaxy_Nexus_4.4.2”模拟器相关信息
在弹出的图1-38所示界面中,单击“Launch”按钮。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0030_0001.jpg?sign=1739278799-spFnlCncKF0YE1VAbOFPgKlCem3N2VLp-0-fb65614cfca0f8ca6907f51d36ae4fed)
图1-38 “Launch Options”对话框信息
随后弹出图1-39所示对话框,我们不需要对该对话框进行任何操作,接下来耐心等待。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0030_0002.jpg?sign=1739278799-e1UqcrsUlcOT3V0UbgBsHQEpc0NwfKTy-0-8dcb29f3ca520c483ef4d762e31bc44c)
图1-39 “Launch Options”对话框信息
由于计算机配置的不同,模拟器启动所耗费的时间也不尽相同,通常来说其启动时间要大于两分钟,所以需要大家有一定的耐心,这也是我们提倡使用真实物理设备的一个原因,当模拟器启动后,将显示图1-40所示界面信息。
从图1-40中,我们不难看出其界面和手机显示屏幕没有差异,可以通过鼠标单击“锁”图标,按住鼠标向右划动对模拟器进行解锁,解锁后的界面如图1-41所示。
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0030_0003.jpg?sign=1739278799-iCx7SseiM1GAfyBQAtg5U2vLY7VBcSPV-0-6b5316803ac3e56135ca905e7c5c014b)
图1-40 “Galaxy_Nexus_4.4.2”启动后的显示效果界面信息
![](https://epubservercos.yuewen.com/32715A/11261878003073106/epubprivate/OEBPS/Images/figure_0030_0004.jpg?sign=1739278799-V5ZplEDqaO1IVMmhNAS71pvwDS3XHmd2-0-2a3112de741338eb5f242584655d2660)
图1-41 解锁后的显示效果界面信息
模拟器同样具备Home键、Back键、最近启用的应用程序键等,它和我们平时应用的手机设备的功能无差别,Home键能够使我们在任何时候都可以回到桌面,Back键则返回到上一个界面,最近启动的应用程序键可以展示最近启用过的应用程序列表供选择,当然在操作的过程中可能会涉及一些输入操作,这时我们笔记本上的键盘就成为了输入设备。