zoukankan      html  css  js  c++  java
  • 项目接入Poco-SDK,你必须知道的一些问题

    前言

    很多新手同学想要使用我们的poco框架获取项目的控件树来进行自动化测试。但是他们经常会搞不清楚,哪些项目是需要接入Poco-SDK才能获取控件树,这个Poco-SDK是接入到哪里去的,所以今天我们就接入Poco-SDK这个问题,把同学们常问的一些问题给大家解答下。

    1.如何知道项目是否需要接入Poco-SDK

    很简单,大家只要记住,目前只有安卓原生和iOS原生应用,能够在不接入Poco-SDK的情况下,直接使用我们的poco框架,像其它的平台,Cocos、unity、Egret等等,都必须事先接入Poco-SDK才可正常使用。

    2.这个Poco-SDK是接入到哪里的

    这个问题特别多新手同学犯错,他们有的会把下载下来的Poco-SDK放到设备目录下,有的会把它放到airtest脚本目录下,这些都是错误的做法。

    实际上,我们应该 把Poco-SDK嵌入到你的游戏项目源码里面 ,比如unity游戏项目的脚本、Cocos项目的脚本等,而不是放到设备目录下或者放到airtest脚本目录下。

    所以,经常有同学问我们没有源码的项目能接入Poco-SDK吗?答案是不能。

    3.unity项目接入Poco-SDK的常见问题

    我们按接入步骤一个个来了解下。

    1)下载Poco-SDK包

    这个直接到我们的GitHub上面clone下来即可:https://github.com/AirtestProject/Poco-SDK

    2)把Unity3D文件夹放到项目脚本中

    把刚才clone下来的压缩包 Poco-SDK-master.zip 解压,然后将其中的Unity3D文件夹放到你Unity项目的Scripts的任意位置中:

    注意,这里所说的Scripts指的就是unity游戏项目的源码。

    3)根据UI类型选择

    询问程序使用的是哪种UI方式,SDK中有三个文件夹 uguinguifairygui ,保留其中一种删除另外两种,比如上图选择的就是 ugui 。其余两种请务必删除,不然unity会报错。

    4)在unity载入脚本

    创建一个空的 GameObject (右键-Create Empty),添加脚本(Add Component):

    其他参数默认即可,GameObject 名字随意。

    或者,同学们也可以在 root 或者 主camera 这些 GameObject 上添加脚本(Add Component) Unity3D/PocoManager.cs

    有同学可能会问,为什么要新建空的 GameObject 或者是选择 root 、 主camera 这些 GameObject 来添加脚本呢?

    其实这都是为了将脚本挂载到1个 不会在游戏的生命周期中被销毁的节点 上去,并且在游戏开始时,尽快开启poco服务。

    4.Cocos-Creator项目接入Poco-SDK的常见问题

    跟上面一样,我们依旧是按步骤来看。

    1)下载Poco-SDK包

    同上。

    2)把cocos-creator/Poco文件夹放项目脚本中

    复制Poco-SDK包里面的 cocos-creator/Poco 文件夹到你的cocos-creator项目的脚本目录下,任意路径都可以。

    这里所说的cocos-creator项目指的就是cocos-creator游戏项目的源码。

    3)编辑cocos-creator项目的配置文件

    在引擎目录中找到 ccConfig.h 文件。文件路径在 your/path/to/CocosCreator_2.2.1/resources/cocos2d-x/cocos/base/ccConfig.h

    编辑第62行。把 #define USE_WEBSOCKET_SERVER 0 改为 #define USE_WEBSOCKET_SERVER 1

    这样做的目的是为了开启开启 WebSocketServer 模块。

    4)添加脚本到一个永远不会消失的节点上

    添加脚本需要我们 手动添加 ,例如:

    在该脚本的 onLoad 函数中,添加如下脚本:

    onLoad:function(){
        var poco = require("Poco") //此处添加你自己的Poco.js文件的路径
        window.poco = new poco();
        cc.log(window.poco);
        
    },
    

    然后永不消失的UI节点,即在你 切换任意场景时,此节点都会常驻,并且永不销毁 。这种永不消失的节点可大致分为两种,一种是强制赋予一个永不消失的属性;另一种是常驻内存的根节点/特殊节点,例如主相机节点。

    所以我们一般建议把脚本添加到根节点或者主相机节点上,就是如此。

    5.目前poco的支持情况如何

    平台 Poco 接入文档
    Android原生应用 直接使用 无需接入Poco-SDK
    Android微信小程序 直接使用安卓poco https://mp.weixin.qq.com/s/R02Ac3ZC1B_ND7QVik_Z8Q
    iOS原生应用 直接使用 无需接入Poco-SDK
    unity3D 需接入Poco-SDK https://poco-chinese.readthedocs.io/zh_CN/latest/source/doc/integration.html#unity3d
    Cocos2dx-js 需接入Poco-SDK https://poco-chinese.readthedocs.io/zh_CN/latest/source/doc/integration.html#cocos2dx-js-beta
    Cocos2dx-lua 需接入Poco-SDK https://poco-chinese.readthedocs.io/zh_CN/latest/source/doc/integration.html#cocos2dx-lua
    Cocos-Creator 需接入Poco-SDK https://poco-chinese.readthedocs.io/zh_CN/latest/source/doc/integration.html#cocos-creator
    UE4 需接入Poco-SDK https://mp.weixin.qq.com/s/_3TmmFGkgdyIU-JVUFkDWw
    Egret 需接入Poco-SDK https://github.com/AirtestProject/Poco-SDK/tree/master/Egret

    Airtest官网http://airtest.netease.com/
    Airtest教程官网https://airtest.doc.io.netease.com/
    搭建企业私有云服务https://airlab.163.com/b2b

    Airtest官方答疑Q群:654700783

    呀,这么认真都看到这里啦,帮忙点个推荐支持一下呗,灰常感谢~

  • 相关阅读:
    2018.10.10python homework
    2018.10.10python学习第十六天part3
    2018.10.10python学习第十六天part2
    2018.10.10python学习第十六天part1
    2018.09.28python学习第十三天part3
    2018.09.28python学习第十三天part2
    2018.09.28python学习第十三天part1
    当不搞技术好几年后,又回来了,忽然很亲切
    福大软工 · BETA 版冲刺前准备(团队)
    事后诸葛亮
  • 原文地址:https://www.cnblogs.com/AirtestProject/p/14304343.html
Copyright © 2011-2022 走看看