目录
[一. 连接手机](#一. 连接手机)
[1. 授权](#1. 授权)
[2. 调试](#2. 调试)
[3. 获取参数](#3. 获取参数)
[二. 启动APP](#二. 启动APP)
[1. 启动Appium服务](#1. 启动Appium服务)
[2. 启动Appium Inspector](#2. 启动Appium Inspector)
[3. 配置Appium Inspector](#3. 配置Appium Inspector)
[三. 功能说明](#三. 功能说明)
[1. 主菜单功能](#1. 主菜单功能)
[2. 快照视图菜单](#2. 快照视图菜单)
[3. 元素视图菜单](#3. 元素视图菜单)
[四. 常见问题](#四. 常见问题)
[1. appPackage有多个设备时](#1. appPackage有多个设备时)
一. 连接手机
1. 授权
首先将手机的开发者模式打开,不同手机的开启方法不同,这里演示的测试机为三星S21+,其他机型的开启方法大家可以直接百度搜索。
(1)进入手机的【设置】选项

(2)进入【开发者选项】
(注:不同手机这里打开方式不一样,一般手机在【关于手机】里找到【版本号】,连续点击【版本号】7次,即可进入开发者模式。

(3)打开【USB调试】:在<开发者选项>页,滑动找到【USB调试】,打开USB调试

2. 调试
(1)使用数据线连接上手机,如果手机上弹出"是否允许USB调试?"确认框,点【确定】即可。

(2)在电脑键盘上按【Win+R】,输入cmd打开命令行窗口,输入:adb devices
如果连接成功就可以看到你的手机deivce id

注:如果出现device not found,优先检查手机的驱动是否安装正确,也可以到【设备管理器】中去查看对应的设备驱动是否异常,这里推荐使用adb driver installer这个软件来安装对应的设备驱动。
3. 获取参数
我们想要通过Appium来运行相关APP,需要获取与其相关的几个参数(后面会用到):
- platformName:设备的平台名,Android或iOS。
- platformVersion:Android内核版本号。
- deviceName:设备名,这里使用刚才ADB里的device id或deviceName。
- appPackage:apk的包名,在Android系统中是判断一个App的唯一标识。
- appActivity:这里可以理解为启动名或启动页。
(1)查看源代码
这里推荐这种方法,如果被测对象是自研的APP,直接问下对应开发同学,这两个参数的值就可以啦,省时省力。
(2)使用ADB命令
连接手机,打开想操作的APP,在cmd中输入以下命令获取参数
查看platformVersion :adb shell getprop ro.build.version.release

查看deviceName: adb devices -l

查看appPackage和appActivity :
adb shell "dumpsys window | grep mCurrentFocus"

二. 启动APP
1. 启动Appium服务
动Appium-Server,并且保持连接手机。

2. 启动Appium Inspector
新版appium1.22与Appium inspector分离,需要单独下载Appium-Inspector安装
(1)下载
网盘下载地址:https://pan.quark.cn/s/2670cddd46d0
(2)安装
下载好之后如下,双击执行即可

(3)运行
安装成功后,启动后界面如下:

3. 配置 Appium Inspector
我们要启动APP就需要在Capability Builder区域中填写对应APP的启动参数。
(1)点击【+】按钮,添加属性

(2)Appium Server按默认写(Remote Host:127.0.0.1,RemotePort
:4723,Remote Path:/wd/hub),CapabilityBuilder填入之前获取的各项参数。

(3)点击【Start Session】,启动APP

(4)启动时会在测试手机上自动安装依赖应用,启动完成后会自动打开测试APP,并且在Inspector上显示与APP同步的画面【手机上自动安装的Appium Settings 应用安装好不要卸载】。

- 左侧是应用程序的屏幕截图(快照视图)。
- 中间是应用程序的层次结构,表示为XML。
- 右侧是元素信息视图。
三 . 功能 说明
1. 主菜单功能

【】Press BackButton/操作回退:当我们想要查看返回上一个操作查看页面信息,可以通过点击back 按钮。此时Inspector窗口和手机都会同时回到上一个操作的界面,等同于android手机上的返回键。
【 】Press Home Buttor/返回主屏幕 :从当前应用或界面返回手机主屏幕。
【 】Press App Switch Button/应用切换 :快速切换最近打开使用的应用程序。
【 】Native App Mode :切换为原生APP模式;
【 】Web/Hybrid App Mode :切换为混合APP模式,如果APP有小程序或者H5的话可以切这个模式;
【 】Refresh Source&Screenshot/刷新 :当我们在手机上对APP进行操作后,Inspector窗口的屏幕截图不会自动更新,需要我们通过点击刷新按钮,更新应用的最新页面。
【 】Search for element/查找元素 :我们可以根据各类元素的定位条件进行元素的相关搜索,方便我们快速定位。
【 】Start Recording/录制 :可以录制自动化测试脚本,但录制出的脚本默认使用的是xpath定位,xpath的定位方式十分的脆弱,绝对路径定位一旦发生变化,脚本的维护就会变得十分的困难,如果一定要用,推荐使用相对路径的定位方法。
【 】Quit Session/退出 :当我们不再需要使用Inspector,就可以点击x关闭Inspector窗口。
2. 快照 视图 菜单

【 】Select Elements/查看元素信息: 点击select Elements 按钮,然后在屏幕截图中点击要查看的元素,最后在右侧的区域就可以看到元素的xpath,index,package,class,text,resource-id等信息。

【 】 Tap/Swipe By Coordinates :使用坐标点击,直接在屏幕截图上使用鼠标来点击元素,手机也会同步操作 。
【 】 Download Screensho t:下载当前屏幕截图。
3. 元素 视图 菜单

【 】Tap :模拟点击;
【 】Send Keys :如果为输入框的话可以使用这个选项来填写对应的内容;
【】Clear :清除编辑框内容;
【 】Copy Attributesto Clipboard/复制页面元素 :复制当前页面元素的属性信息;
【】Download Screenshot :下载当前元素截图;
【】Get Timing :获取选中的元素响应所需的时长。

四 . 常见问题
1. appPackage有多个设备时
如果有多个设备,需要依次输以下命令查看:
adb -s XXXX shell 来制定进入的设备
dumpsys window | grep mCurrentFocus 查看appPackage