测试工具GAutomator的研究(一)——如何使用GAutomator

测试⼯具GAutomator的研究(⼀)——如何使⽤GAutomator
⽂章⽬录
GAutomator简介
GAutomator是腾讯wetest测试平台下的⼀个针对⼿游的开源的⾃动化测试框架。源码在GitHub上有:。GAutomator将sdk嵌⼊到游戏中,然后通过adb连接客户端和服务器端(⼿游端),最后通过在客户端写测试脚本来对游戏进⾏⾃动化测试。
使⽤
1.下载源码
从上下载源码。
2.将sdk嵌⼊到Unity⼯程
sdk⽀持两种游戏开发平台:Unity和Unreal。⽀持两种游戏运⾏平台:Android和IOS。在Unity中⼜⽀持两种UI种类:NGUI和Unity⾃带的UGUI。本⽂只记录Unity+Android+UGUI的使⽤。其余平台的使⽤可以参考源码中的各个使⽤⽂档。
1. 打开Unity⼯程。
2. 拷贝SDK。
1. 将源码中的GAutomator/UnitySDK/compiled/UGUI/U3DAutomation.dll拷贝到Unity⼯程Assets⽬录下的任意合法位置。
2. 将GAutomator/UnitySDK/compiled/u3dautomation.jar拷贝到Unity⼯程Assets/Plugins/Android⽬录下。
3. 挂载sdk脚本。为了能让sdk在游戏运⾏时也运作起来,需要像普通C#脚本⼀样挂载在⼀个激活的游戏物体上。为此:
1. 新建⼀个空的游戏物体,在上⾯挂上U3DAutomationBehaviour脚本。
这个脚本是在U3DAutomation.dll⾥⾯定义的⼀个类。对应的源码在⼯程源码下可以到。后⾯讲。不过,官⽅的⽂档推荐⽤宏判定的⽅式动态挂载这个脚本,使得游戏在⾮测试的环境下不会运⾏这个测试SDK。具体看官⽅⽂档。
4. ⾄此,嵌⼊服务器端SDK的游戏⼯程就完成了。将其打包成APK⽂件,个安卓机器安装就⾏了。本⽂将使⽤⽹易的MUMU模拟器。
3.使⽤adb连接安装了游戏的安卓设备
adb即Android Debug Bridge,是⼀个⾮常常⽤安卓调试⼯具。可以单独安装adb,也可以跟某些IDE⼀起安装。我是直接装了android studio,这样adb和android sdk也都免了。具体安装adb的⽅式询问度娘或google,具体的使⽤⽅式也参考度娘或Google。
1. 如果你使⽤的是⽹易的MUMU模拟器,那么打开模拟器之后,⼀般需要⼿动连接adb
架构调整
adb connnect 127.0.0.1:7555
2. 个⼈认为最好⽤的是雷电模拟器(记得给我打⼴告费),雷电模拟器会⾃动帮你连接adb。所以你登上雷电模拟器之后,⽤以下命令
就可以查询到对应的设备号:
汽车轮胎模具adb devices -l
3. 你也可以选择⽤真机调试,⽤USB连接⼿机⾄电脑
1. 打开机器的开发者模式
2. 打开机器的USB调试选项
3. 有些⼿机还需要将USB连接功能选⾄“传输⽂件”,adb调试才会⽣效
此时,你⽤上⼀条的命令应该就可以查询到真机的设备号。
4.运⾏游戏
在安卓平台上运⾏安装好的游戏,我们需要让sdk在测试脚本启动前运⾏。如果sdk成功运⾏,那么在开启游戏的最开始的⼏秒钟,游戏画⾯的左上⾓会显⽰红红的“GAutomator”字样。
5.打开测试脚本⼯程开始测试
⽤任何⼀款IDE或编辑器打开GAutomatorAndroid⽬录。这是针对Android平台的⾃动化测试脚本⼯程根⽬录。在这个根⽬录创建⼀
个my_test.py脚本,写⼊以下代码:
ls.basic_operator import*# 导⼊必要的模块
def test():
# 获得引擎管理模块实例和⽇志模块实例
_engine()
_logger()
# 获取sdk版本信息
脚踏式垃圾桶_sdk_version()
logger.debug("Version Information : {0}".format(version))
# 获取当前游戏场景
_scene()前锁后塞
logger.debug("Scene :  {0}".format(scene))
# 查⼀个名为Sample的按钮
节能灯生产设备sample_button=engine.find_element("/Canvas/Panel/Sample")
实验室分析天平
logger.debug("Button : {0}".format(sample_button))
# 点击该按钮
screen_shot_click(sample_button)
if __name__=="__main__":
test()
然后运⾏该脚本。
python my_test.py
如果游戏中存在⼀个/Canvas/Panel/Sample按钮,则该按钮会被点击。
6.⽤start.py启动脚本
GAutomator提供了⼀个start.py脚本来启动你的代码。在此之前,他会做⼀些准备⼯作。⽐如读取命令⾏参数,⼀些初始化的⼯作。如果你想让脚本跑在多个机器上,那么你就需要为每台机器指定adb forward的端⼝,为每个脚本指定对应机器的设备号。⽐如⽤如下⽅式启动:
python start.py --serial=emulator-5554--uiport=5520
python start.py --serial=emulator-5556--uiport=5530
具体的操作请阅读源码。

本文发布于:2024-09-23 09:28:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/178311.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:游戏   测试   脚本   源码   机器   设备   模拟器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议