3.3 Poco辅助功能

Poco 是一种 基于UI识别 的测试框架。AirtestIDE对Poco框架进行了使用支持,提供了UI查看、脚本自动录制等辅助功能。

3.3.2 已支持的应用类型

Poco对不同类型的应用支持情况:
应用类型 poco-sdk
Android 无需sdk, Android详情
Cocos-lua 集成文档(Cocos-lua)
Cocos-js 集成文档(Cocos-js)
Unity 集成文档(Unity)
Netease 仅限网易内部使用, Netease详情

3.3.3 展示UI渲染树

../_images/1-poco_switch_app.gif

在使用UI渲染树查看功能前,请确保必备的 Poco-SDK 已嵌入,且应用正常开启。

将辅助窗的下拉选项切换到对应选项,稍等片刻即可刷出UI树。

如果没有刷出,可尝试数据探针的重启操作:先切换至 "Stop" 选项,再切换到对应选项。

3.3.4 查看画面中UI呈现

1. 冻结模式:

../_images/2-poco_freeze.gif
主要用途:
查看当前画面中各位置的UI呈现范围。
进入方式:
点击冻结按钮 / 或者 单击UI渲染树上任意条目
具体表现:
  • 屏幕画面会冻结(设备操作失效),UI渲染树的数据也会停止刷新。
  • 伴随鼠标在画面中的移动,对应位置的UI元素会被标记框标出。
  • 鼠标左键点击,可以在log输出窗中查看对应控件的详细属性。
层叠UI
可以通过右键菜单,对不同层叠顺序的UI进行选择。
退出方式:
再次点击冻结按钮 / 或者 右键菜单-"Poco Mode"-"Normal"

2. 检视器模式:

../_images/3-poco_inspector.gif
主要用途:
伴随设备操作,查看不同页面UI的渲染情况。
进入方式:
点击检视器按钮。
具体表现:
  • 设备画面可以正常交互,UI渲染树的数据正常刷新。
  • 伴随鼠标在画面中的移动,对应位置的UI元素会被标记框标出。
  • 鼠标左键点击,可以在log输出窗中查看对应控件的详细属性。
层叠UI
可以通过右键菜单,对不同层叠顺序的UI进行选择。
退出方式:
再次点击检视器按钮 / 或者 右键菜单-"Poco Mode"-"Normal"

3. 节点自助搜索

点击UI树的控件, Ctrl+F 可以 隐藏/显示 搜索框 (支持拼音模糊搜索)

3.4 Poco脚本录制辅助

合理借助脚本录制辅助功能,可以大大提高poco脚本的书写效率。当前AirtestIDE提供的Poco录制功能分为两种:单步录制、伴随操作自动录制。

3.4.1 插入Poco初始化代码

在切换Poco应用类型时,脚本编辑框会弹出提示插入初始化Poco代码的通知窗。 确认Poco应用类型正确后,确认插入光标位置后,点击 'Yes' 即可插入对应的Poco初始化代码。

注意:Poco初始化代码必须放在poco语句之前。

3.4.2 单步录制Poco脚本

../_images/4-poco_manual_record.gif
  • 生成UI节点的poco代码:
    双击UI树中的目标条目,即可插入对应UI节点的poco代码。
  • 生成UI节点的x-path代码:
    UI树中的目标条目上,点击 右键菜单-'UI path-code',即可生成完整父子链的poco代码。

注意:单步录制的代码中的操作代码(如 ".click()" )需要手动添加。

3.4.3 自动录制Poco脚本

../_images/5-poco_auto_record.gif
进入方式:
点击Poco自动录制按钮。
具体表现:
  • 设备画面可以正常交互,UI渲染树的数据正常刷新。
  • 伴随鼠标在画面中的移动,对应位置的UI元素会被标记框标出。
  • 伴随设备操作(点击、滑动),即可插入对应UI节点的poco代码。
退出方式:
再次点击自动录制按钮 / 或者 右键菜单-"Poco Mode"-"Normal"

3.5 windows-app的poco辅助功能

AirtestIDE对Windows-app提供了UI查看、脚本自动录制等辅助功能。由于Windows窗口内是独立渲染的,所以需要单独选中一下窗口主画面,AirtestIDE在对应位置进行包围盒覆盖呈现。

3.5.1 查看画面中UI呈现

1. 冻结模式:

../_images/windows_poco_render_rect.gif
主要用途:
查看当前画面中各位置的UI呈现范围。
进入方式:
  • 在“选项”-“设置”-“Poco”-“Windows Content Area Rect”,框选主画面后双击确认(右键/esc可取消)
  • 点击冻结按钮 / 或者 单击UI渲染树上任意条目
具体表现:
  • 屏幕画面会冻结(设备操作失效),UI渲染树的数据也会停止刷新。
  • 鼠标左键点击,可以在log输出窗中查看对应控件的详细属性。
退出方式:
再次点击冻结按钮

3.5.2 单步录制Poco脚本

../_images/windows_poco_record_and_run.gif
  • 生成UI节点的poco代码:
    双击UI树中的目标条目,即可插入对应UI节点的poco代码。
  • 生成UI节点的x-path代码:
    UI树中的目标条目上,点击 右键菜单-'UI path-code',即可生成完整父子链的poco代码。

注意:单步录制的代码中的操作代码(如 ".click()" )需要手动添加。