51Testing软件测试论坛

标题: Appium之ADB指令详解 [打印本页]

作者: 做自己的女王ヽ    时间: 2018-2-6 10:20
标题: Appium之ADB指令详解
       前言
  学Android测试,ADB指令是必学的。
[attach]110637[/attach]
       一、ADB概述
  Android Debug Bridge,Android调试桥接器,简称adb,是用于管理模拟器或真机状态的
万能工具,采用了客户端-服务器模型,包括三个部分:
  1、客户端部分,运行在开发用的电脑上,可以在命令行中运行adb命令来调用该客户端,像
ADB插件和DDMS这样的Android工具也可以调用adb客户端。
  2、服务端部分,是运行在开发用电脑上的后台进程,用于管理客户端与运行在模拟器或真机
的守护进程通信。
  3、守护进程部分,运行于模拟器或手机的后台。
  当启动adb客户端时,客户端首先检测adb服务端进程是否运行,如果没有运行,则启动服务
端。当服务端启动时,它会绑定到本地的TCP5037端口,并且监听从adb客户端发来的命令——所
有的adb客户端都使用5037端口与adb服务端通信。
  接下来服务端与所有正在运行的模拟器或手机连接。它通过扫描5555-5585之间的奇数号端
口来搜索模拟器或手机,一旦发现adb守护进程,就通过此端口进行连接。需要说明的是,每一个
模拟器或手机使用一对有序的端口,偶数号端口用于控制台连接,奇数号端口用于adb连接。
  二、常用的指令
  1.查询模拟器或手机状态
  adb devices
  执行结果是adb为每一个设备输出以下状态信息:序列号(serialNumber) — 由adb创建的使用控
制台端口号的用于唯一标识一个模拟器或手机设备的字符串,格式是 <设备类型>-<端口号>,例
如: emulator-5554
  状态(state) — 连接状态,其值是:offline — 未连接或未响应
  device —已经连接到服务商。注意这个状态并不表示Android系统已经完全启动起来,系统启
动的过程中已经可以连接adb,但这个状态是正常的可操作状态。
[attach]110638[/attach]
      2.安装卸载应用程序APK
  在 cmd 输入以下指令,可以安装 app:adb install <path_to_apk>
  在 cmd 输入以下指令,可以删除 app:adb uninstall <path_to_apk>
  3.使用Monkey进行UI或应用程序测试
  Monkey是运行于模拟器或手机上的一个程序,通过生成伪随机的大量的系统级的用户事件
流来模拟操作,包括单击、触摸、手势等。从而为正在开发中的应用程序通过随机响应进行压力
测试。最简单使用monkey的方式是通过下面的命令行,它可以运行指定的应用程序并向其发送
500个伪随机事件。
  在 cmd 输入以下指令:adb shell monkey -v -p your.package.name 500
  4.停止重启adb服务
  在某些情况下,可能需要终止然后重启服务端进程,例如adb不响应命令的时候,可以通过
重启解决问题。使用kill-server可以终止服务端,然后使用其他的adb命令重启。
  在 cmd 输入以下指令,停止adb服务:adb kill-server
  在 cmd 输入以下指令,重启adb服务:adb start-server
  5.adb与模拟器或手机传输文件
  在 cmd 输入以下指令,表示从电脑发文件到手机:adb push <本地路径> <远程路径>
  在 cmd 输入以下指令,表示从手机下载文件到本地:adb pull <本地路径> <远程路径>
  6.日志输出
  第一种:输出到手机存储卡
  adb logcat > /sdcard/mylogcat.txt
  第二种:输出到电脑上
  adb logcat > D:/Temp/1.txt(1.txt 必须在电脑上存在,才能写入 logcat 内容)
  7.显示帮助信息
  adb help
[attach]110639[/attach]



作者: 梦想家    时间: 2018-2-28 17:14

作者: Miss_love    时间: 2020-12-30 08:36
学习了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2