App自动化04-Inspector检查器启动QQ测试

页面功能说明

Appium检查器是Appium-desktop自带的一个工具,通过它可以来获取页面元素信息(包括页面布局、控件、元素属性等),以及还可以通过它来实现脚本的录制功能。
点击Appium检查器启动之后,可以看到页面分成三大区域:

第一部分区域为连接Appium服务器的相关配置

  • 自动设定
    检查器会自动将之前启动Appium服务器所填的地址、端口信息同步过来,一般我们选择这个即可
  • 自定义服务器
    这里我们可以自己设置连接Appium服务器所需的参数,比如你想要连接到另外一台主机上面的Appium服务器
  • 选择云服务器提供商
    连接到这些云服务器提供的Appium服务器,一般不用

第二部分区域为代理及证书相关配置

第三部分区域为所需功能配置,通过所需功能配置告诉Appium服务器如何建立通讯连接

DesiredCapabilties所需功能配置

一般我们填写如下四个基础配置即可:

  • deviceName
    设备名字,通过此属性,appium可以找到我们对应的设备进行通讯,通过打开cmd窗口,运行adb devices命令,输出的结果即可得到对应的deviceName
    注意:需要先保证adb已经连接上了模拟器/真机,怎么连接,戳这里

  • platformName
    平台名,如果是android就写Android,ios即是IOS

  • appPackage
    应用的包名,通过此属性,appium就可以得知需要和哪个app进行通讯。可以通过Android SDK自带的aapt工具获取,aapt工具介绍:

aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看,创建, 更新ZIP格式的文档附件(zip, jar, apk)。也可将资源文件编译成二进制文件

默认Android SDK自带了aapt工具,进入到build-tools对应的目录中,在地址栏上面输入cmd即可打开cmd窗口并且自动将路径定位到当前,输入aapt命令

解析APK包的信息,通过aapt dump badging apk包所在路径(以qq安装包为例),解析结果中的第一行即为对应的app包名

  • appActivity
    应用的入口activity,通过此属性,可以开启app。

同样通过aapt工具解析可获取到启动入口配置,命令同上述保持一致,在结果中搜索“launchable-activity”关键字,后面的值即为入口配置

最后,对应的四个基本参数配置如下,点击启动会话

初始化结束之后,可以看到如下界面

左边为手机即时画面的映射,通过鼠标即可点击控制相应的元素,如果发现没有同步,可以点击工具栏上刷新按钮。

AppSource:
画面的元素构成,包括布局和控件

Selected Element:
选中的元素对应的属性信息,这个就是我们查找定位元素的关键信息,包括有:

index:索引
text:文本
class:类
package:包
content-desc:内容描述
checkable:可选
checked:选中
enabled:可用
focusable:可获得焦点
focused:获得焦点
scrollable:可滚动
long-clickable:可长点击
password:隐藏明文(密文显示)
selected:选中
bounds:界面(起始点坐标/终止点坐标)
resource-id:元素ID

检查器录制功能

点击开始录制按钮“眼睛图标”

选择元素->操作

生成脚本,还可以选择不同语言,Java、python、ruby等等

检查器初始会话可能会碰到的问题

An unknown server-side error occurred while processing the command. Original error: 'app' option is required for reinstall

解决方案:
确保测试App有安装到Android设备中

无法连接到服务器;您确定要运行吗?

解决方案:
确保Appium服务器有在运行

An unknown server-side error occurred while processing the command. Original error: You must include a platformName capability

解决方案:
platformName配置是否有写上,要注意大小写问题

An unknown server-side error occurred while processing the command. Original error: The desired capabilities must include either an app, appPackage or browserName

解决方案:
确保所需配置中有appPackage属性

An unknown server-side error occurred while processing the command. Original error: activity and pkg are required to start an application

解决方案:
appActivity配置是否有写上,要注意大小写问题,对应的值是否正确

An unknown server-side error occurred while processing the command. Original error: Could not find a connected Android device.

解决方案:
设备是否有通过adb链接上,通过adb devices命令检查

posted @ 2020-03-03 16:08  歪歪欧巴  阅读(1786)  评论(0编辑  收藏  举报