十一、如何测试基于unity3D引擎的游戏
创作时间:
作者:
@小白创作中心
十一、如何测试基于unity3D引擎的游戏
引用
1
来源
1.
http://airtest.doc.io.netease.com/tutorial/11_test_Unity3D_game/
本文将介绍如何使用poco-sdk测试基于Unity3D引擎开发的游戏。文章详细描述了在Android和iOS平台上进行游戏测试的具体步骤,包括SDK的接入、项目配置、代码示例等。内容具有较高的专业性和实用性,适合游戏开发和测试人员阅读。
十一、如何测试基于unity3D引擎的游戏
1. 前言
由于游戏的界面是通过游戏引擎渲染出来的,游戏界面没有系统原生的控件信息,所以对于游戏,我们需要接入 poco-sdk 才能获取到游戏界面中的控件信息。下面以Unity开发的手游为例,介绍如何在Android和iOS平台进行连接。
2. Android 平台
- 从poco sdk repo将Unity3D这个文件夹克隆下来。
- 将克隆下来的Unity3D文件夹放置于你的Unity项目的Assets/Scripts文件夹下。
- 将Assets/Scripts/Unity3D目录下以未用到的UI系统命名的文件夹删除。例:假如您的项目使用的UI系统是ugui,请将fairygui和ngui两个文件夹删除,保留ugui文件夹。
- 在Unity3D中打开您的项目,并将Unity3D/PocoManager.cs作为一个script component添加到您的GameObject中,要求挂载在一个永不销毁的对象下,比如通常情况下的主相机。
- 举例: 点击demo这个场景下的Main Camera, 会在右方出现inspector界面,点击inspector界面当中的Add Component。
- 在弹出的对话框中输入poco,选择出现的Poco Manager这个选项。
- 完成后会在inspector界面出现如图所示的component。
- 点击界面左上角File->Build Settings, 生成一个合适的安卓包,并安装到您的手机上。
- 启动Airtest IDE,按照上文所述将Airtest IDE与您的手机链接,并启动对应的游戏。
- 在左下角的Poco辅助窗中选择Unity模式,即可看到当前界面的UI树结构:
- 在选择Unity模式之后,Airtest IDE会自动插入poco的初始化代码:
之后的脚本编写,就可以利用Poco提供的API对游戏界面上的元素进行操作了。
下面是一个简单的测试用例。您可以从这里下载这个简单的Unity3D小游戏。在安装完成后,打开游戏后点击Start再点击drag drop会出现如下所示的界面。
每将一颗星星拖动到屏幕中心的贝壳上,将得到20分;如果将5颗星星依次拖动到贝壳上,那将获得100分。下面的脚本就是在测试依次拖动5颗星星是否会得到100分的分数。
点击运行脚本按钮,就会得到如下所示的结果。from airtest.core.api import * auto_setup(__file__) from poco.drivers.unity3d import UnityPoco poco = UnityPoco() poco('btn_start').click() time.sleep(1.5) poco('drag_and_drop').click() shell = poco('shell').focus('center') for star in poco('plays').offspring('star'): star.drag_to(shell) time.sleep(1) assert poco('scoreVal').get_text() == "100", "score correct." poco('btn_back', type='Button').click()
3. iOS平台
- 同样的,先完成引擎SDK接入,打包出来安装在iOS手机上,然后通过Airtest IDE连接iOS手机
- 与Android不同的是,iOS Unity Poco的连接需要启动两个proxy,8100端口用于连接iOS手机,5001端口用于连接poco-sdk的rpc端口
iproxy 8100 8100 iproxy 5001 5001
这里的iproxy相当于adb中的forward - 连接好iOS手机之后,选择Poco辅助窗中的Unity模式,即可看到当前界面的UI树结构:
- 之后即可通过Poco提供的API,对iOS上的游戏编写自动化测试脚本了。
本文原文来自网易
热门推荐
台湾烘焙都有哪些特点?台湾比较著名的烘焙产品有哪些?
公司社保承诺书具体用途是什么
点燃乡村振兴人才“火种”,广东这个青年兴乡计划再启新程
挣钱最重要的六个能力是什么?成功人士必备的赚钱技能
第四代住宅的设计原理及优缺点浅析
科普 | 氢的种类以及制氢方式
东莞记忆:唤醒千年古城的生命力
2024年实用物理降温退烧方法全攻略
大脑如何分解信息?信息分解帮助理解生物和人工认知系统
水性工业涂料的四大核心成分及其作用
OpenWrt软路由的管理界面如何访问
附详细岗位信息!2024年贵州省重点产业紧缺人才需求目录发布
芹菜炒肉,先炒芹菜还是先炒肉?许多人做错了,教你正确做法!
证券转出是实时到账吗?T+2到账详解
流动资产的管理方法是什么?如何优化流动资产的配置?
上海地铁26号线大升级,百公里环线新动向曝光
销售目标管理是什么,如何做好销售目标管理?
房地产新动能成为新的投资增长点
精准诊疗PET/CT在活检穿刺中的作用
阅历与读书
阿托伐他汀片的作用与功效有什么
塑料能不能在微波炉加热
初次见领导时应该怎么说?这份职场指南请收好
如何管理电子版照片尺寸
门店标准化管理流程:从商品到服务的全方位规范指南
王泽强:让中国大跨度空间结构施工技术问鼎全球
国产蓝莓走红广州市场:价格走低,品质上乘,但品种研发成“卡脖子”难题
衣柜哥:如果衣柜空间有限,如何巧妙地设计挂衣杆以节省空间
智算超算优势叠加!光明全域智慧城市建设大有可为
合肥城建收购交易集团:是否属于“并购六条”想要的跨界并购