CN112732580A - 基于Unity的层级查找的自动化测试方法、装置及介质 - Google Patents

基于Unity的层级查找的自动化测试方法、装置及介质 Download PDF

Info

Publication number
CN112732580A
CN112732580A CN202110033961.2A CN202110033961A CN112732580A CN 112732580 A CN112732580 A CN 112732580A CN 202110033961 A CN202110033961 A CN 202110033961A CN 112732580 A CN112732580 A CN 112732580A
Authority
CN
China
Prior art keywords
script
client
game
python
unity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110033961.2A
Other languages
English (en)
Other versions
CN112732580B (zh
Inventor
易罗阳
黄海庭
刘明诚
熊文娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Kingsoft Online Game Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Online Game Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Kingsoft Online Game Technology Co Ltd filed Critical Zhuhai Kingsoft Online Game Technology Co Ltd
Priority to CN202110033961.2A priority Critical patent/CN112732580B/zh
Publication of CN112732580A publication Critical patent/CN112732580A/zh
Application granted granted Critical
Publication of CN112732580B publication Critical patent/CN112732580B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于Unity的层级查找的自动化测试方法、装置及介质,包括:在游戏项目文件中添加用于检测游戏数据的脚本,并以脚本作为服务端;启动游戏程序,通过脚本建立与客户端的连接;通过客户端向脚本发送若干调试指令,脚本根据调试指令对游戏指令进行录制;通过客户端接收脚本采集的游戏指令,并进行逻辑处理,以及,生成并执行自动化测试方案。本发明的有益效果为:解决了传统游戏自动化测试中出现的大部分弊端,灵活性,精准度更高,同时支持通过录制生成自动化测试脚本,大幅减少测试开发人员编写自动化案例的时间成本。

Description

基于Unity的层级查找的自动化测试方法、装置及介质
技术领域
本发明涉及计算机领域,具体涉及了一种基于Unity的层级查找的自动化测试方法、装置及介质。
背景技术
随着游戏的复杂程度不断增大,游戏的测试也变得越来越难,在传统的人工的游戏测试中,容易出现测试的精准度差,人力成本高,时间成本高等问题,如果在测试的过程的成本变得如此高,那游戏优化阶段会变得举步维艰。
而自动化测试能在一定程度上解决人工测试产生的各种问题,大幅节省了人力成本和时间成本。传统的游戏自动化测试方案有以下几种:
1、基于固定坐标的模拟操作;
2、基于图像识别的模拟操作;
而这两种自动化测试方案都有明显的缺点如:
1、在基于固定坐标的模拟操作中灵活性极低,只能完成一些简单的测试案例;
2、在基于图像识别的模拟操作中容易出现识别不精准。
发明内容
本发明的目的在于至少解决现有技术中存在的技术问题之一,提供了一种基于Unity的层级查找的自动化测试方法、装置及介质,少测试开发人员编写自动化案例的时间成本。
本发明的技术方案包括一种基于Unity的层级查找的自动化测试方法,其特征在于,该方法包括:S100,在游戏项目文件中添加用于检测游戏数据的脚本,并以脚本作为服务端;S200,启动游戏程序,通过脚本建立与客户端的连接;S300,通过客户端向脚本发送若干调试指令,脚本根据调试指令对游戏指令进行录制;S400,通过客户端接收脚本采集的游戏指令,并进行逻辑处理,以及,生成并执行自动化测试方案。
根据所述的基于Unity的层级查找的自动化测试方法,其中脚本包括若干用于自动化测试的接口,其中接口包括但不限于查询节点、点击物体、获取文本及设置文本。
根据所述的基于Unity的层级查找的自动化测试方法,其中客户端为Python客户端,Python客户端通过TCP与脚本进行通信连接。
根据所述的基于Unity的层级查找的自动化测试方法,其中S300包括:当游戏接收到客户端调试命令后,通过接口对游戏UI进行的操作都会录制下来,并由Python客户端接收并翻译成为Python代码指令,通过Python客户端执行Python代码指令。
根据所述的基于Unity的层级查找的自动化测试方法,其中S300包括:根据接口的监听,实时将游戏程序中的点击、滑动及输入文本操作进行采集并序列化,发送至Python客户端,Python客户端将序列化的操作指令进行反序列化处理,生成Python代码指令。
根据所述的基于Unity的层级查找的自动化测试方法,其中S400包括:通过Python客户端对Python代码指令进行逻辑处理及自定义编辑,自动生成自动化测试案例,执行自动化测试案例并收集自动化测试案例的结果,显示于交互界面。
本发明的技术方案还包括一种基于Unity的层级查找的自动化测试装置,该装置包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现任一所述的方法步骤。
本发明的技术方案还包括一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如任一所述的方法步骤。
本发明的有益效果为:解决了传统游戏自动化测试中出现的大部分弊端,灵活性,精准度更高,同时支持通过录制生成自动化测试脚本,大幅减少测试开发人员编写自动化案例的时间成本。
附图说明
下面结合附图和实施例对本发明进一步地说明;
图1所示为根据本发明实施方式的总体流程图;
图2a,2b,2c,2d,2e所示为根据本发明实施方式的自动化测试方法;
图3所示为根据本发明实施方式的装置图。
具体实施方式
本部分将详细描述本发明的具体实施例,本发明之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本发明的每个技术特征和整体技术方案,但其不能理解为对本发明保护范围的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。
在本发明的描述中,对方法步骤的连续标号是为了方便审查和理解,结合本发明的整体技术方案以及各个步骤之间的逻辑关系,调整步骤之间的实施顺序并不会影响本发明技术方案所达到的技术效果。
本发明的描述中,除非另有明确的限定,设置等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
图1所示为根据本发明实施方式的总体流程图,该流程包括:S100,在游戏项目文件中添加用于检测游戏数据的脚本,并以脚本作为服务端;S200,启动游戏程序,通过脚本建立与客户端的连接;S300,通过客户端向脚本发送若干调试指令,脚本根据调试指令对游戏指令进行录制;S400,通过客户端接收脚本采集的游戏指令,并进行逻辑处理,以及,生成并执行自动化测试方案。
图2所示为根据本发明实施方式的降低手机游戏首包的流程示意图,包括:
(1)导入Package包至游戏工程项目里,并挂载初始化脚本。参考图2a,Package包为dll库,dll库封装了在自动化测试时候需要使用到的各种接口.常见的接口如查询节点,点击物体,获取/设置文本等。导入本方案的Package包到项目中,并在场景中挂载初始化的脚本作为服务端。
(2)运行游戏,启动自动化服务。启动本方案的Python客户端进行TCP连接如图2b,并启动本方案的Python客户端进行TCP连接,Python客户端可以输入相应的指令对游戏进行自动化的操作。
(3)Python客户端发送开启调试模式命令,开启成功后即可开始录制操作并生成操作的指令,如图2c所示,当游戏接收到客户端调试命令后,用户对游戏UI(UGUI/NGUI)进行的操作(点击,设置文本,滑动物体等)都会录制下来,并由Python客户端接收并翻译成为Python代码指令,执行这些指令便可还原录制的操作,大幅减少自动化案例开发时间。
(4)将由调试模式录制下来的指令进行优化,添加逻辑操作,使其能满足更多复杂的测试情景,如图2d所示,录制下来的指令若需要进行逻辑处理,则需要用户修改里面的指令代码,使得其能变得更灵活,适应真实测试案例的需求,在Python端提供各种接口方便用户无需打开游戏项目即可进行游戏自动化案例的开发。
(5)Python客户端执行自动化案例,使得游戏端能接受对应的自动化指令并进行操作,如图2e。自动化案例开发完毕后,即可开启自动化测试,开启后用户可以使用本方案的截图接口,将每一步的操作截取下来,验证自动化操作的结果正确与否,而无需时刻看着游戏。
图3所示为根据本发明实施方式的装置图。装置包括存储器100及处理器200,其中处理器200存储有计算机程序,计算机程序用于执行:在游戏项目文件中添加用于检测游戏数据的脚本,并以脚本作为服务端;启动游戏程序,通过脚本建立与客户端的连接;通过客户端向脚本发送若干调试指令,脚本根据调试指令对游戏指令进行录制;通过客户端接收脚本采集的游戏指令,并进行逻辑处理,以及,生成并执行自动化测试方案。其中,存储器100用于存储数据。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

Claims (8)

1.一种基于Unity的层级查找的自动化测试方法,其特征在于,该方法包括:
S100,在游戏项目文件中添加用于检测游戏数据的脚本,并以脚本作为服务端;
S200,启动游戏程序,通过脚本建立与客户端的连接;
S300,通过客户端向脚本发送若干调试指令,脚本根据调试指令对游戏指令进行录制;
S400,通过客户端接收脚本采集的游戏指令,并进行逻辑处理,以及,生成并执行自动化测试方案。
2.根据权利要求1所述的基于Unity的层级查找的自动化测试方法,其特征在于,所述脚本包括若干用于自动化测试的接口,其中接口包括但不限于查询节点、点击物体、获取文本及设置文本。
3.根据权利要求1所述的基于Unity的层级查找的自动化测试方法,其特征在于,所述客户端为Python客户端,Python客户端通过TCP与脚本进行通信连接。
4.根据权利要求3所述的基于Unity的层级查找的自动化测试方法,其特征在于,所述S300包括:
当游戏接收到客户端调试命令后,通过接口对游戏UI进行的操作都会录制下来,并由Python客户端接收并翻译成为Python代码指令,通过Python客户端执行Python代码指令。
5.根据权利要求4所述的基于Unity的层级查找的自动化测试方法,其特征在于,所述S300包括:
根据接口的监听,实时将游戏程序中的点击、滑动及输入文本操作进行采集并序列化,发送至Python客户端,Python客户端将序列化的操作指令进行反序列化处理,生成Python代码指令。
6.根据权利要求4所述的基于Unity的层级查找的自动化测试方法,其特征在于,所述S400包括:
通过Python客户端对Python代码指令进行逻辑处理及自定义编辑,自动生成自动化测试案例,执行自动化测试案例并收集自动化测试案例的结果,显示于交互界面。
7.一种基于Unity的层级查找的自动化测试装置,该装置包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-6任一所述的方法步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6任一所述的方法步骤。
CN202110033961.2A 2021-01-11 2021-01-11 基于Unity的层级查找的自动化测试方法、装置及介质 Active CN112732580B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110033961.2A CN112732580B (zh) 2021-01-11 2021-01-11 基于Unity的层级查找的自动化测试方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110033961.2A CN112732580B (zh) 2021-01-11 2021-01-11 基于Unity的层级查找的自动化测试方法、装置及介质

Publications (2)

Publication Number Publication Date
CN112732580A true CN112732580A (zh) 2021-04-30
CN112732580B CN112732580B (zh) 2024-07-02

Family

ID=75590537

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110033961.2A Active CN112732580B (zh) 2021-01-11 2021-01-11 基于Unity的层级查找的自动化测试方法、装置及介质

Country Status (1)

Country Link
CN (1) CN112732580B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2297994A1 (en) * 2000-02-04 2001-08-04 Ibm Canada Limited-Ibm Canada Limitee Automated testing computer system components
KR20120047013A (ko) * 2010-11-03 2012-05-11 주식회사 엔씨소프트 스크립트를 이용한 온라인 게임 서버의 스트레스 테스트 시스템 및 그 방법
US20130137498A1 (en) * 2011-11-30 2013-05-30 Multimedia Games, Inc. Electronic Gaming Machine Automated Testing
CN104778121A (zh) * 2015-03-25 2015-07-15 网易(杭州)网络有限公司 游戏程序的测试方法、装置及系统
US20150331779A1 (en) * 2014-05-13 2015-11-19 Unisys Corporation Framework to accommodate test plan changes without affecting or interrupting test execution
CN106095666A (zh) * 2016-06-02 2016-11-09 腾讯科技(深圳)有限公司 游戏自动化测试方法及相关装置
WO2019218458A1 (zh) * 2018-05-16 2019-11-21 平安科技(深圳)有限公司 一种应用程序测试方法、装置、移动终端及介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2297994A1 (en) * 2000-02-04 2001-08-04 Ibm Canada Limited-Ibm Canada Limitee Automated testing computer system components
KR20120047013A (ko) * 2010-11-03 2012-05-11 주식회사 엔씨소프트 스크립트를 이용한 온라인 게임 서버의 스트레스 테스트 시스템 및 그 방법
US20130137498A1 (en) * 2011-11-30 2013-05-30 Multimedia Games, Inc. Electronic Gaming Machine Automated Testing
US20150331779A1 (en) * 2014-05-13 2015-11-19 Unisys Corporation Framework to accommodate test plan changes without affecting or interrupting test execution
CN104778121A (zh) * 2015-03-25 2015-07-15 网易(杭州)网络有限公司 游戏程序的测试方法、装置及系统
CN106095666A (zh) * 2016-06-02 2016-11-09 腾讯科技(深圳)有限公司 游戏自动化测试方法及相关装置
WO2019218458A1 (zh) * 2018-05-16 2019-11-21 平安科技(深圳)有限公司 一种应用程序测试方法、装置、移动终端及介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RUIFENG CHEN等: "A Selenium based approach to automatic test script generation for refactoring JavaScript code", 2013 IEEE/ACIS 12TH INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE (ICIS), 26 September 2013 (2013-09-26), pages 1 - 6 *
马飞;: "运行Python脚本的自动化测试平台设计及实现", 中国集成电路, no. 10, 31 October 2018 (2018-10-31), pages 59 - 62 *

Also Published As

Publication number Publication date
CN112732580B (zh) 2024-07-02

Similar Documents

Publication Publication Date Title
CN110531962B (zh) 小程序的开发处理方法、设备及计算机可读存储介质
US20190065347A1 (en) Debugging program code at instruction level through emulation
CN103164300A (zh) 一种移动终端触摸屏自动测试方法及装置
CN102722440A (zh) 一种嵌入式系统可执行代码的调试装置、调试方法及嵌入式系统
CN110688145B (zh) Android MVP代码自动生成方法、装置、介质、电子设备
CN105308578A (zh) 状态转变的诊断
CN107526679A (zh) 自动化测试框架、基于其上的自动化测试方法、存储介质和计算机设备
CN115705250A (zh) 监测堆栈使用量以优化程序
CN112000334A (zh) 页面开发方法、装置、服务器及存储介质
CN117130717B (zh) RPA场景下HTMLayout应用程序的元素定位方法及系统
CN111858339B (zh) 内存分析方法、设备和系统以及计算设备、计算机可读存储介质
CN112732580B (zh) 基于Unity的层级查找的自动化测试方法、装置及介质
CN116414607A (zh) 应用程序的故障排查方法及装置
US20220237108A1 (en) Source traceability-based impact analysis
CN111459547B (zh) 一种函数调用链路的展示方法和装置
US20210224083A1 (en) Intelligent loading of user interface resources
CN112241268A (zh) 一种keil工程的编译方法、系统及设备
US12079104B2 (en) Infrastructure to integrate an integrated development environment (IDE) with game engines
CN113805976B (zh) 数据处理方法及装置、电子设备及计算机可读存储介质
CN118261143B (zh) Unity环境下的Json数据解析方法、装置、设备及介质
CN112579431A (zh) 一种基于图像识别的跨平台脚本录制与回放方法
US20180267780A1 (en) Methods for providing conditional allocation of build files and related systems and computer program products
CN115543323B (zh) 一种页面开发方法及装置
CN115145737B (zh) 动态加锁方法、电子设备及计算机可读存储介质
CN110175116B (zh) 一种测试日期切换方法、装置及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Country or region after: China

Address after: 519000 Room 102, 202, 302 and 402, No. 325, Qiandao Ring Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province, Room 102 and 202, No. 327 and Room 302, No. 329

Applicant after: Zhuhai Jinshan Digital Network Technology Co.,Ltd.

Address before: 519080 Room 102, 202, 302 and 402, No. 325, Qiandao Ring Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province, Room 102 and 202, No. 327 and Room 302, No. 329

Applicant before: ZHUHAI KINGSOFT ONLINE GAME TECHNOLOGY Co.,Ltd.

Country or region before: China

GR01 Patent grant