Android调试桥介绍—精通移动App测试实战(1)

发表于:2016-3-31 08:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:于涌 王磊 曹向志    来源:51Testing软件测试网原创

分享:
  (51Testing软件测试网获人民邮电出版社和作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。)
  3.2 ADB相关指令实例讲解
  3.2.1 adb devices指令实例讲解
  在讲这个指令之前,我首先启动了一个名称为"Galaxy_Nexus_4.4.2"的手机模拟器(有时我们也管其叫安卓虚拟设备),并且通过USB数据线将我的手机设备和PC进行了连接,而后我应用"Android Screen Monitor"工具捕获到我的物理手机屏幕信息,运行后的手机模拟器和物理手机屏幕显示,如图3-7所示。
  平时在我们进行测试的时候,用的最多的可能就是查看设备的相关信息了,用什么指令可以了解到我们的物理测试设备或者模拟器的相关信息呢?
  我告诉大家一个指令就可以实现,它就是"adb devices"指令,通过该指令用户就可以了解到目前连接的设备/模拟器的状态的相关信息。可以在命令行控制台输入"adb devices",其显示信息如图3-8所示。
  从图3-8中,我们可以看出其输出信息主要包括2列内容,第一列内容为设备的序列号信息,第二列为设备的状态信息。
  设备的序列号是用来唯一表示一个模拟器或者物理设备的一串字符,通常模拟器是以"<设备类型>-<端口号>"的形式为其序列号,图3-8所显示的"5554:Galaxy_Nexus_4.4.2",就表示设备的类型为"Galaxy_Nexus_4.4.2",正在监听5554端口的模拟器实例。而"4df7b6be03f2302b"表示连接到我们PC上的物理手机设备的序列号。
  状态信息则可能会包含以下3种不同状态。
  (1)device状态:这个状态表示设备或者模拟器已经连接到adb服务器上。但是这个状态并不代表物理手机设备或者模拟器已经启动完毕并可以进行操作,因为Android系统在启动时会先连接到adb服务器上,但android系统启动完成后,设备或者模拟器通常是这个状态。
  (2)offline状态:这个状态表明设备或者模拟器没有连接到adb服务器或者没有响应。
  (3)no device状态:这个状态表示没有物理设备或者模拟器连接。
  3.2.2 adb install指令实例讲解
  作为测试人员,我们平时经常要进行的一个操作就是把被测试的手机应用软件安装到指定的手机设备中。可能经常会用到一些如豌豆荚、腾讯手机助手、360 手机助手等软件将其安装到手机设备当中。那么我们有没有其他的方法可以实现同样的目的呢?当然可以,用"adb install"指令同样可以完成将手机应用安装到手机设备或者模拟器的目的。
  现在有这样的一个问题,就是我们开启了一个物理手机设备和一个模拟器设备,而我们只想向模拟器设备安装一个名称为"CalculatorOfTwoNum.apk"的手机应用,也就是我们在讲第一章时一起创建的那个计算两个整数相加样例程序。但是现在有2个设备,我们该怎么做呢?答案是在"adb"指令中加入一个"-s"参数来指定针对那个设备进行操作。
  这里作者给出完整的向模拟器设备安装"CalculatorOfTwoNum.apk"包的相关指令信息,即"adb -semulator-5554 install E:\CalculatorOfTwoNum.apk"。我们在命令行控制台输入该指令,回车运行后,将出现图3-9所显示输出信息和手机应用包安装成功后在模拟器中产生的相应图标信息。
  【重点提示】
  (1)用户可以输入"adb -s 物理手机设备序列号/手机模拟器设备序列号 install 安装包路径"来向指定的物理手机设备或者模拟器来安装指定的手机应用,如果向我的物理手机设备安装"CalculatorOfTwoNum.apk"应用,则可以在命令行控制台输入"adb -s4df7b6be03f2302b install E:\CalculatorOfTwoNum.apk"。
  (2)如果用户已经安装了该应用,再次运行安装时,将会出现图3-10所示信息。从图3-10的显示信息,我们可以看出该应用已存在,所以给出了安装失败的信息,如果重新安装该包,则需要先将其以前的包卸载,再次进行安装,后续相关卸载的操作和指令我们也将向大家进行介绍。
  (3)如果已经安装了该应用,又不想卸载后再安装,还有一个办法就是加入"- r"参数,加入该参数后,会覆盖原来安装的软件并保留数据,如"adb -s emulator-5554 install -r E:\CalculatorOfTwoNum.apk"在应用已安装的情况下,仍然可以覆盖原来安装的软件并保留数据,这对于测试人员是非常有用的一条指令。
  (4)如果仅连接了一个物理手机设备或者一个模拟器设备,可以不指定设备的序列号而直接进行安装,假设我们现在仅连接了一个模拟器设备,且该模拟器设备上没有安装过"CalculatorOfTwoNum.apk"应用,就可以直接输入"adb installE:\CalculatorOfTwoNum.apk"来安装该应用包。
  (5)如果一个模拟器和一个物理手机设备都处于已连接状态,运行"adb install E:\CalculatorOfTwoNum.apk"指令后,将显示图3-11所示信息。
本文选自《精通移动App测试实战:技术、工具和案例》第三章,本站经人民邮电出版社和作者的授权。
版权声明:51Testing软件测试网获人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号