-
框架工具选取
Airtest + Poco
Airtest是一个跨平台的、基于图像识别的UI自动化测试框架,适用于游戏和App,支持平台有Windows、Android和iOS。
Poco是一款基于UI控件识别的自动化测试框架,目前支持Unity3D/cocos2dx-*/Android原生app/iOS原生app/微信小程序,也可以在其他引擎中自行接入poco-sdk来使用。
Poco插件可以准确地定位到当前游戏画面上的元素在实际UI结构树中的位置,还能够获取到这个按钮的名字、坐标等详细信息,并且我们还能通过编写一定的筛选语句来获取到这个按钮,并对它进行相应操作。
例如:poco(“Go”).click() #"Go"是按钮的名字
这是一个简化的原理图,对比了Airtest和Poco的操作原理:
可以看到,Poco最大的区别就是多了一个Poco-SDK模块,我们需要将Poco-SDK嵌入到被测游戏中,才能够顺利地获取到UI结构树,从而进行接下来的解析和处理操作。
-
如何接入Poco
zmg课件使用cocos 2dx-js引擎,接入细节请参考官方文档https://poco-chinese.readthedocs.io/zh_CN/latest/source/doc/integration.html#cocos2dx-js-beta
3.自动化demo代码地址
https://gitlab.zmaxis.com/zm_test/zmg_ui_auto
如何编写自动化脚本
UI测试框架结构
1.课件自动化框架与UI自动化框架结构相同采用PageObject设计模式,将用例,操作,元素解耦。