CN111045931B - 应用程序测试方法、装置、设备及存储介质 - Google Patents

应用程序测试方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111045931B
CN111045931B CN201911154050.4A CN201911154050A CN111045931B CN 111045931 B CN111045931 B CN 111045931B CN 201911154050 A CN201911154050 A CN 201911154050A CN 111045931 B CN111045931 B CN 111045931B
Authority
CN
China
Prior art keywords
server
test
application
terminal
application program
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.)
Active
Application number
CN201911154050.4A
Other languages
English (en)
Other versions
CN111045931A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911154050.4A priority Critical patent/CN111045931B/zh
Publication of CN111045931A publication Critical patent/CN111045931A/zh
Application granted granted Critical
Publication of CN111045931B publication Critical patent/CN111045931B/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/3688Test management for test execution, e.g. scheduling of test suites
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例公开了一种应用程序测试方法、装置、设备及存储介质,属于计算机技术领域。该方法包括:第一终端显示管理界面,基于管理界面检测到的设置操作生成测试任务,将测试任务发送给测试服务器,测试服务器接收第一终端发送的测试任务,调用虚拟机器人标识对应的虚拟机器人,登录与应用程序标识关联的应用服务器,通过虚拟机器人与应用服务器进行交互,应用服务器与登录应用服务器的第二终端进行交互。因此,测试服务器调用虚拟机器人执行测试任务,由虚拟机器人代替应用程序,与待测试的应用程序进行交互,无需在其他终端上安装应用程序,也无需在测试过程中操作多个终端,减少了耗费的人力和时间,提高了测试效率,降低了测试成本。

Description

应用程序测试方法、装置、设备及存储介质
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种应用程序测试方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,多种应用程序逐渐兴起,如游戏应用程序、社交应用程序、信息分享应用程序等。为了确保应用程序的性能良好,及时发现应用程序中存在的缺陷,需要对应用程序进行测试。
目前的很多应用程序具备交互功能,如游戏应用程序中的玩家可以进行对战,或者社交应用程序中的好友可以聊天等。对这类应用程序进行测试时,测试人员会在多个终端上安装该应用程序,操作多个终端,使多个终端通过安装的应用程序进行交互,从而完成测试。但是,上述测试方法耗费了过多的人力和时间,测试效率低,测试成本高。
发明内容
本申请实施例提供了一种应用程序测试方法、装置、设备及存储介质,可以解决相关技术中存在的测试效率低的问题。所述技术方案如下:
一方面,提供了一种应用程序测试方法,应用于测试服务器,所述方法包括:
接收第一终端发送的测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
调用所述虚拟机器人标识对应的虚拟机器人,登录与所述应用程序标识关联的应用服务器;
通过所述虚拟机器人与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序。
另一方面,提供了一种应用程序测试方法,应用于第一终端,所述方法包括:
显示与测试服务器关联的管理界面;
基于所述管理界面检测到的设置操作,生成测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
将所述测试任务发送给所述测试服务器,所述测试服务器用于调用所述虚拟机器人标识对应的虚拟机器人登录与所述应用程序标识关联的应用服务器,通过所述虚拟机器人与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序。
另一方面,提供了一种应用程序测试方法,应用于第二终端,所述方法包括:
在应用程序的运行过程中,接收测试服务器发送的测试脚本;
执行所述测试脚本后生成执行结果;
将所述执行结果发送给所述测试服务器;
其中,所述测试脚本由第一终端发送给所述测试服务器,所述测试服务器用于调用虚拟机器人登录所述应用程序关联的应用服务器,通过所述虚拟机器人与所述应用服务器进行交互。
另一方面,提供了一种应用程序测试装置,应用于测试服务器,所述装置包括:
接收模块,用于接收第一终端发送的测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
调用模块,用于调用所述虚拟机器人标识对应的虚拟机器人,登录与所述应用程序标识关联的应用服务器;
交互模块,用于通过所述虚拟机器人与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序。
可选地,所述装置还包括:
获取模块,用于根据交互过程中生成的交互数据,获取测试结果;
第一发送模块,用于将所述测试结果发送给所述第一终端。
可选地,所述装置还包括:
所述接收模块,还用于接收所述第一终端发送的测试脚本,所述测试脚本携带所述应用程序标识;
第二发送模块,用于将所述测试脚本发送给所述应用程序标识对应的所述第二终端,所述第二终端用于执行所述测试脚本。
可选地,所述第二终端还用于在执行所述测试脚本后生成执行结果,所述装置还包括:
第三发送模块,用于当接收到所述第二终端发送的执行结果时,将所述执行结果发送给所述第一终端。
可选地,所述测试服务器包括万维网Web服务器和后台服务器,所述接收模块,包括:
转换单元,用于所述Web服务器接收所述第一终端发送的测试任务,将所述测试任务从第一数据格式转换为第二数据格式,向所述后台服务器发送所述第二数据格式的测试任务;
接收单元,用于所述后台服务器接收所述第二数据格式的测试任务。
可选地,所述交互模块,包括:
节点获取单元,用于根据所述虚拟机器人当前的状态查询测试行为树,得到所述状态对应的操作节点,所述测试行为树包括至少一个状态对应的操作节点;
第一发送单元,用于通过所述虚拟机器人向所述应用服务器发送与所述操作节点对应的操作请求,所述应用服务器用于响应所述操作请求。
可选地,所述交互模块,包括:
数据获取单元,用于获取当前的场景状态数据;
操作获取单元,用于基于操作预测模型,获取所述场景状态数据对应的操作类型;
第二发送单元,用于通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
可选地,所述装置还包括:
数据接收模块,用于接收所述第二终端发送的状态数据,所述状态数据由所述第二终端在所述应用程序的运行过程中获取;
响应模块,用于响应所述状态数据。
可选地,所述应用服务器包括接入服务器和交互服务器,所述交互模块,包括:
第一建立单元,用于通过所述虚拟机器人与所述接入服务器建立传输控制协议TCP连接,通过所述TCP连接进行交互;
第二建立单元,用于通过所述虚拟机器人与所述交互服务器建立用户数据报协议UDP连接,通过所述UDP连接进行交互。
可选地,所述第一建立单元,还用于当所述虚拟机器人为多个时,通过每个虚拟机器人分别与所述接入服务器建立TCP连接,通过所述TCP连接进行交互;
所述第二建立单元,还用于当所述虚拟机器人为多个时,通过全局线程与所述交互服务器建立UDP连接,通过所述虚拟机器人与所述全局线程进行交互,由所述全局线程与所述交互服务器进行交互。
另一方面,提供了一种应用程序测试装置,应用于第一终端,所述装置包括:
显示模块,用于显示与测试服务器关联的管理界面;
任务生成模块,用于基于所述管理界面检测到的设置操作,生成测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
发送模块,用于将所述测试任务发送给所述测试服务器,所述测试服务器用于调用所述虚拟机器人标识对应的虚拟机器人登录与所述应用程序标识关联的应用服务器,通过所述虚拟机器人与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序。
可选地,所述测试服务器还用于根据交互过程中生成的交互数据,获取测试结果,所述装置还包括:
第一接收模块,用于接收所述测试服务器发送的测试结果,在所述管理界面中显示所述测试结果。
可选地,所述发送模块,还用于将获取的测试脚本发送给所述测试服务器,所述测试脚本携带所述应用程序标识,所述测试服务器用于将所述测试脚本发送给所述第二终端,所述第二终端用于执行所述测试脚本。
可选地,所述第二终端还用于在执行所述测试脚本后生成执行结果,发送给所述测试服务器,所述测试服务器还用于将所述测试结果发送给所述第一终端,所述装置还包括:
第二接收模块,用于接收所述测试服务器发送的执行结果。
另一方面,提供了一种应用程序测试装置,应用于第二终端,所述装置包括:
接收模块,用于在应用程序的运行过程中,接收测试服务器发送的测试脚本;
执行模块,用于执行所述测试脚本后生成执行结果;
结果发送模块,用于将所述执行结果发送给所述测试服务器;
其中,所述测试脚本由第一终端发送给所述测试服务器,所述测试服务器用于调用虚拟机器人登录所述应用程序关联的应用服务器,通过所述虚拟机器人与所述应用服务器进行交互。
可选地,所述装置还包括:
获取模块,用于获取所述应用程序的运行过程中的状态数据;
数据发送模块,用于将所述状态数据发送给所述测试服务器,所述测试服务器用于响应所述状态数据。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如所述应用程序测试方法中所执行的操作。
再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如所述应用程序测试方法中所执行的操作。
本申请实施例提供的方法、装置、设备及存储介质,第一终端显示管理界面,基于管理界面检测到的设置操作生成测试任务,将测试任务发送给测试服务器,测试服务器接收第一终端发送的测试任务,调用虚拟机器人标识对应的虚拟机器人,登录与应用程序标识关联的应用服务器,通过虚拟机器人与应用服务器进行交互,应用服务器与登录应用服务器的第二终端进行交互。因此,测试服务器调用虚拟机器人执行测试任务,由虚拟机器人代替应用程序,与待测试的应用程序进行交互,无需在其他终端上安装应用程序,也无需在测试过程中操作多个终端,减少了耗费的人力和时间,提高了测试效率,降低了测试成本。
并且,第一终端将获取的测试脚本发送给测试服务器,测试服务器将测试脚本发送给应用程序标识对应的第二终端,第二终端接收到测试脚本时执行测试脚本。因此通过建立第二终端与测试服务器之间的网络连接,可以在第一终端配置测试脚本,由第一终端通过测试服务器直接调用第二终端执行测试脚本,实现了对应用程序的自动化测试。而且在同一时间可以向多个第二终端发送测试脚本,由多个第二终端并行执行该测试脚本,能够提高测试效率,节约测试时间。
并且,第一终端基于测试人员的设置操作生成测试任务,将测试任务发送给测试服务器,通过设置测试任务来控制测试服务器中的虚拟机器人,提高了虚拟机器人的易用性,测试应用程序的过程更加方便。
并且,测试服务器通过虚拟机器人分别与接入服务器建立TCP连接,与交互服务器建立UDP连接,采用两种方式实现测试服务器和应用服务器的网络连接,增强了测试服务器的适用性。而且通过全局线程与交互服务器建立UDP连接,通过虚拟机器人与全局线程进行交互,由全局线程与交互服务器进行交互,解决了虚拟机器人的通信组件不支持多线程模式下UDP通信的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图。
图2是本申请实施例提供的另一种实施环境的示意图。
图3是本申请实施例提供的一种网络系统的架构图。
图4是本申请实施例提供的一种应用程序测试方法的流程图。
图5是本申请实施例提供的一种管理界面的示意图。
图6是本申请实施例提供的一种测试行为树的示意图。
图7是本申请实施例提供的一种网络连接的示意图。
图8是本申请实施例提供的另一种应用程序测试方法的流程图。
图9是本申请实施例提供的另一种网络连接的示意图。
图10是本申请实施例提供的一种管理模块的示意图。
图11是本申请实施例提供的一种游戏应用程序测试方法的流程图。
图12是本申请实施例提供的一种应用程序测试装置的结构示意图。
图13是本申请实施例提供的另一种应用程序测试装置的结构示意图。
图14是本申请实施例提供的另一种应用程序测试装置的结构示意图。
图15是本申请实施例提供的另一种应用程序测试装置的结构示意图。
图16是本申请实施例提供的另一种应用程序测试装置的结构示意图。
图17是本申请实施例提供的另一种应用程序测试装置的结构示意图。
图18是本申请实施例提供的一种终端的结构示意图。
图19是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细说明之前,先对涉及到的概念进行如下解释说明:
虚拟机器人:虚拟的、基于网络连接与服务器进行通信的虚拟终端。
状态机(Finite State Machine):状态机是有限状态自动机的简称,是现实事物运行规则抽象而成的一个数学模型,包含一组状态集(States)、一个起始状态(StartState)、一组输入符号集(Alphabet)、一个映射输入符号和当前状态到下一状态的转换函数(Transition Function)。当输入符号串,该数学模型随即进入起始状态,依赖转换函数来改变到新的状态。状态机能够根据控制信号按照预先设定的状态进行状态转移,是完成特定操作的控制中心。在本申请实施例中,状态机是虚拟机器人维护自身运行状态的行为控制器。
行为树(Behavior Tree):行为树是一种形式化的图形建模语言,主要用于系统和软件工程。行为树是一个包含逻辑节点和行为节点的树结构,每次需要找出一个行为的时候,会从树的根节点出发,遍历各个节点,找出第一个和当前数据相符合的行为。
图1是本申请实施例提供的一种实施环境的示意图,参见图1,该实施环境包括:第一终端101、测试服务器102、应用服务器103和第二终端104。
该第一终端101和第二终端104可以为手机、计算机、平板电脑等,该测试服务器102和该应用服务器103均可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心,本申请实施例对此不做限定。
其中,第一终端101和测试服务器102之间通过网络连接,测试服务器102和应用服务器103之间通过网络连接。
第二终端104上安装有应用程序,应用服务器103与该应用程序关联,为该应用程序提供服务。因此,第二终端104通过该应用程序,与应用服务器103之间通过网络连接。
第一终端101向测试服务器102发送对应用程序的测试任务,测试服务器102根据测试任务,调用虚拟机器人与应用服务器103进行交互,应用服务器103与第二终端104进行交互。在交互过程中,虚拟机器人可以看作是虚拟的应用程序,相当于测试服务器102上的应用程序作为辅助,与第二终端104上的应用程序进行交互,从而实现了对第二终端104上应用程序的测试。
在一种可能实现方式中,测试服务器102还与第二终端104建立网络连接,可以通过网络连接与该第二终端104进行交互。
在另一种可能实现方式中,如图2所示,该实施环境还包括AI(ArtificialIntelligence,人工智能)服务器105。AI服务器105与测试服务器102之间通过网络连接。
AI服务器105中配置有操作预测模型,测试服务器102获取到交互过程中产生的场景状态数据时,将该场景状态数据发送给AI服务器105,由AI服务器105基于操作预测模型,获取场景状态数据对应的操作类型,将操作类型返回给测试服务器102,测试服务器102即可根据操作类型发送对应的操作请求。
在另一种可能实现方式中,图3是本申请实施例提供的一种网络系统的架构图,该网络系统包括第一终端101、测试服务器102、应用服务器103、第二终端104和AI服务器105。
参见图3,测试服务器102分别与第一终端101、应用服务器103、第二终端104和AI服务器105通过网络连接。
第一终端101:该第一终端101上包括机器人控制平台,第一终端101可基于机器人控制平台控制测试服务器,如向测试服务器下发测试任务,调用测试服务器上的虚拟机器人等。
测试服务器102:该测试服务器102包括网络通信模块、测试行为树模块、状态机模块、业务接口模块、数据处理模块、终端应用程序管理模块。
其中,网络通信模块用于实现测试服务器102与应用服务器103的网络协议通信。业务接口模块用于进行业务接口封装,实现与应用服务器103的交互。数据处理模块用于进行不同数据格式之间的转换。状态机模块用于维护虚拟机器人的状态。测试行为树模块用于根据虚拟机器人的状态查询对应的操作节点。接口调用模块用于调用接口与AI服务器105进行交互。终端应用程序管理模块用于与第二终端104进行交互。
应用服务器103:应用服务器103包括接入服务器和交互服务器。其中接入服务器可用于将测试服务器102上的虚拟机器人或者第二终端104上的应用服务器,与应用服务器103连接,如响应来自测试服务器102或者第二终端104的注册请求、登录请求等。交互服务器用于与测试服务器102进行交互。
第二终端104:该第二终端104可以包括一个终端,也可以包括多个终端。该一个终端或者多个终端上安装有与应用服务器103关联的应用程序。
AI服务器105:该AI服务器105包括操作预测模型和第二接口。该操作预测模型用于通过场景状态数据获取对应的操作类型,该第二接口用于与测试服务器102进行交互。
图4是本申请实施例提供的一种应用程序测试方法的流程图。本申请实施例的交互主体为第一终端、测试服务器、应用服务器和第二终端,参见图4,该方法包括:
401、第一终端显示与测试服务器关联的管理界面。
管理界面用于设置测试任务,基于管理界面能够实现对测试任务的编辑、添加、删除等操作。
该管理界面包括选择应用程序选项和添加机器人选项,选择应用程序选项用于选择待测试的应用程序,添加机器人选项用于选择执行测试任务的虚拟机器人。
在一种可能实现方式中,第一终端上运行有万维网Web控制程序,该管理界面为Web控制程序的管理界面。Web控制程序中包括管理界面入口,该管理界面入口用于触发显示管理界面。当测试人员需要设置测试任务时,基于Web控制程序触发对管理界面入口的操作,第一终端检测到对管理界面入口的触发操作时,显示管理界面。
其中,Web控制程序可通过第一终端上运行的浏览器进行访问,或者通过第一终端上安装的其他应用程序进行访问,该Web控制程序用于控制虚拟机器人执行测试任务。
如图5所示,第一终端显示管理界面,管理界面中的第一显示区域中显示机器人操作选项、机器人指令选项和机器人脚本选项,其中机器人操作选项用于设置测试任务,机器人指令选项用于设置机器人要执行的指令,机器人脚本选项用于设置测试脚本。
当测试人员触发机器人操作选项时,管理界面的第二显示区域中显示选择应用程序选项、选择测试环境选项、添加机器人选项、刷新机器人选项、停止机器人选项、选择指令选项、指令参数编辑选项、执行指令选项、选择脚本选项和执行脚本选项。第二显示区域中还包括虚拟机器人的测试环境、状态以及执行结果,其中每个虚拟机器人分别对应占用选项和释放选项。占用选项用于占用对应的虚拟机器人执行测试任务,释放选项用于解除对虚拟机器人的占用。
402、第一终端基于管理界面检测到的设置操作,生成测试任务,将测试任务发送给测试服务器。
测试服务器与第一终端之间建立网络连接。测试服务器中设置有至少一个虚拟机器人,虚拟机器人可以看作是能够与其他服务器通过网络连接的虚拟终端,可以执行与真实终端相同的操作。
在一种可能实现方式中,虚拟机器人为在测试服务器中运行的用于执行测试任务的线程。
当测试人员需要对某一应用程序进行测试时,可基于管理界面设置虚拟机器人标识和应用程序标识。第一终端基于管理界面检测到测试人员的设置操作时,根据设置操作生成对应的测试任务,将该测试任务发送给测试服务器。
其中,测试任务包括虚拟机器人标识和应用程序标识,该测试任务用于指示测试服务器调用虚拟机器人标识对应的虚拟机器人,测试该应用程序标识对应的应用程序。虚拟机器人标识用于唯一确定一个虚拟机器人,可以为虚拟机器人的名称、编号等。应用程序标识可唯一确定一个应用程序,该应用程序标识可以为应用程序标识的名称、编号等,比如应用程序标识是包括数字、字母和符号中至少一种字符的字符串。该应用程序可以为游戏应用程序、社交应用程序、信息分享应用程序等,本申请对此不做限制。
可选地,测试任务中可以只包括一个虚拟机器人标识,也可以包括多个虚拟机器人标识。当包括一个虚拟机器人标识时,表示仅调用该虚拟机器人执行对应的测试任务,当包括多个虚拟机器人标识时,表示调用该多个虚拟机器人执行对应的测试任务。测试人员可根据实际需求自行设置。比如,当需要测试应用程序的登录流程时,则测试人员只需在管理界面中选择一个虚拟机器人,由该虚拟机器人执行登录应用程序的测试任务;当需要测试游戏应用程序的多玩家对战流程时,测试人员在管理界面中选择多个虚拟机器人,由该多个虚拟机器人执行多玩家对战的测试任务。
该测试任务可以为测试游戏匹配流程、测试游戏对战流程、测试好友数量上限、测试邮件数量上限等。例如,该测试任务为测试好友数量上限,测试任务中包括100个虚拟机器人标识、待测试的应用程序标识以及待添加好友的测试人员标识。则该测试好友数量上限的测试任务用于指示测试服务器调用100个虚拟机器人标识对应的100个虚拟机器人,发送添加该用户标识为好友的请求,来测试该用户标识的好友数量上限是多少。
403、测试服务器接收第一终端发送的测试任务时,调用虚拟机器人标识对应的虚拟机器人,登录与应用程序标识关联的应用服务器。
当测试服务器接收到第一终端发送的测试任务时,确定测试任务中的虚拟机器人标识对应的虚拟机器人,以及与应用程序标识关联的应用服务器,调用该虚拟机器人登录该应用服务器。
其中,应用服务器与待测试的应用程序关联,由该应用服务器为该应用程序提供服务。测试服务器与应用服务器建立网络连接,该测试服务器通过虚拟机器人与应用服务器进行交互,来完成测试。
在一种可能实现方式中,测试服务器包括Web服务器和后台服务器,Web服务器接收第一终端发送的测试任务,将测试任务从第一数据格式转换为第二数据格式,向后台服务器发送第二数据格式的测试任务;后台服务器接收第二数据格式的测试任务。
Web服务器与第一终端建立网络连接,后台服务器与Web服务器建立网络连接。该Web服务器为第一终端提供服务,由Web服务器接收第一终端发送的测试任务。Web服务器将接收到的测试任务发送给后台服务器,由后台服务器对测试任务进行处理。
其中,Web服务器支持的数据格式为第一数据格式,后台服务器支持的数据格式为第二数据格式,为使Web服务器与后台服务器进行数据交互,则需要对两者的交互数据进行格式转换。Web服务器接收到的测试任务为第一数据格式,因此当Web服务器接收到测试任务时,将该测试任务从第一数据格式转换为后台服务器支持的第二数据格式,将第二数据格式的测试任务发送给后台服务器,由后台服务器接收第二数据格式的测试任务进行处理。
可选地,Web服务器中包括数据处理模块,数据处理模块中配置有数据格式转换的协议,Web服务器根据协议进行数据格式转换。
例如,Web服务器中的编程语言为Java Script(一种编程语言),数据格式为JSON(Java Script Object Notation,,JS对象简谱)对象。后台服务器中的编程语言为C++(TheC++Programming Language,一种编程语言),数据格式为C++结构体对象。则Web服务器将测试任务中的JSON对象,序列化成C++结构体对象,将序列化后的测试任务发送给后台服务器。
404、测试服务器通过虚拟机器人与应用服务器进行交互。
虚拟机器人登录应用服务器后,虚拟机器人也可以看作是与应用服务器关联的应用程序,因此测试服务器通过该虚拟机器人,可以与应用服务器进行交互,可以模拟应用程序与应用服务器进行交互的过程。
在一种可能实现方式中,在交互过程中,测试服务器根据虚拟机器人当前的状态查询测试行为树,得到状态对应的操作节点,通过虚拟机器人向应用服务器发送与操作节点对应的操作请求,应用服务器响应该操作请求。
当虚拟机器人登录应用服务器后,测试服务器通过状态机维护虚拟机器人当前的状态。测试服务器中配置有用于指示虚拟机器人行为的测试行为树。测试行为树中包括至少一个状态对应的操作节点,通过各种操作节点的组合,从而实现对虚拟机器人的状态的控制。因此,测试服务器根据虚拟机器人当前的状态查询测试行为树,得到当前状态对应的操作节点,确定该操作节点对应的操作请求,则测试服务器通过虚拟机器人向应用服务器发送该操作请求。
其中,测试服务器中的测试行为树,是根据应用服务器中的行为树进行配置的,以便使测试服务器中的行为逻辑与应用服务器中的行为逻辑符合。
其中操作节点包括顺序节点、条件节点、选择节点和行为节点。顺序节点是指按顺序执行多个子节点,若遇到一个子节点不能执行,则不继续执行下一个子节点。选择节点是指按顺序执行多个子节点,若成功执行一个子节点,则不继续执行下一个子节点。条件节点是指满足条件时才能成功执行对应的操作返还结果,否则不能执行对应的操作。行为节点是指执行该节点代表的行为,也即是执行该节点对应的操作。
例如,在应用程序为游戏应用程序时,该游戏应用程序对应的应用服务器包括接入服务器和交互服务器,其中接入服务器用于处理用户账号的注册数据、登录数据、添加好友数据等,交互服务器用于处理游戏对战过程中产生的数据。则如图6所示,测试服务器中包括与接入服务器对应的测试行为树,以及与交互服务器对应的测试行为树。
参见图6,根据测试行为树中的操作节点,测试服务器执行操作的过程如下:
虚拟机器人向接入服务器发送注册请求,接入服务器返回注册失败或者注册成功;当前状态为注册成功时,对应的操作节点为“登录”,则虚拟机器人向接入服务器发送登录请求,接入服务器返回登录成功或者登录失败;当前状态为登录成功时,进入游戏大厅界面,对应的操作节点可以为“加入房间”、“响应加好友”、“发起匹配”、“修改属性”、“发送心跳包”、“退出登录”等,则虚拟机器人向接入服务器发送对应的操作请求。
当前状态为加入房间时,则虚拟机器人向接入服务器发送加入房间请求,接入服务器返回进入房间成功或者进入房间失败;当前状态为发起匹配时,则虚拟机器人向接入服务器发送匹配请求,接入服务器返回进入房间成功或者进入房间失败;当前状态为进入房间失败时,虚拟机器人返回游戏大厅界面;当前状态为进入房间成功时,则按游戏逻辑顺序执行单局接入、单局对战、获取操作数据、游戏结束、获取结算数据等操作节点对应的操作。
在一种可能实现方式中,测试服务器获取当前的场景状态数据,基于操作预测模型,获取该场景状态数据对应的操作类型,测试服务器通过虚拟机器人向应用服务器发送该操作类型对应的操作请求。
其中,场景状态数据用于表示当前虚拟机器人的状态。操作预测模型用于预测在场景状态数据对应的状态下,虚拟机器人要执行的操作类型。其中,该操作预测模型可以为卷积神经网络模型、决策树模型等多种类型的模型。
可选地,该操作预测模型可以由测试服务器训练后存储于本地,或者,测试服务器与AI(Artificial Intelligence,人工智能)服务器通过网络连接,AI服务器中配置有操作预测模型,测试服务器获取到场景状态数据时,调用测试服务器中的第一接口将该场景状态数据传递给AI服务器,AI服务器将获取到的场景状态数据输入到操作预测模型中,得到该场景状态数据对应的操作类型,然后调用第二接口将该操作类型传递给测试服务器,测试服务器获取到操作类型时,通过虚拟机器人向应用服务器发送该操作类型对应的操作请求。
例如,当应用程序为游戏应用程序时,场景状态数据是指游戏对局过程中的状态数据,比如该场景状态数据可以包括玩家血量数据、游戏地图数据、可用技能数据、玩家角色数据等,操作类型为攻击、救援、撤退、治疗等。
需要说明的是,步骤404中的虚拟机器人当前的状态是指该虚拟机器人作为虚拟的应用程序,在与应用服务器进行交互的过程中的交互状态,该交互状态由应用服务器维护。而除此之外,虚拟机器人还作为测试服务器控制的测试对象,具有在测试服务器中的运行状态,该运行状态由测试服务器维护。
以虚拟机器人执行游戏应用程序的测试任务为例,在未调用虚拟机器人执行测试任务时,该虚拟机器人的运行状态为“未占用”状态,则该虚拟机器人可以执行第一终端发送的测试任务,在调用虚拟机器人执行测试任务时,该虚拟机器人的运行状态为“已占用”状态,则该虚拟机器人无法执行第一终端发送的测试任务。此时,该虚拟机器人具有交互状态,比如在线状态、添加好友状态、游戏匹配状态等。
当应用服务器接收到测试服务器通过虚拟机器人发送的操作请求时,需要响应该操作请求,从而与虚拟机器人进行交互。可选地,应用服务器查询操作请求对应的业务协议标识,根据业务协议标识确定该操作请求对应的业务协议,应用服务器按照业务协议响应该操作请求。例如,该操作请求为添加好友请求,且添加好友请求携带第二终端的应用程序登录的用户标识以及虚拟机器人登录的用户标识,则应用服务器向第二终端添加好友请求,请求第二终端添加虚拟机器人为好友。
在一种可能实现方式中,应用服务器包括接入服务器和交互服务器。测试服务器分别与接入服务器和交互服务器建立网络连接。
其中,测试服务器通过虚拟机器人与接入服务器建立传输控制协议TCP连接,通过该TCP连接进行交互。
可选地,当虚拟机器人为多个时,测试服务器通过每个虚拟机器人分别与接入服务器建立TCP连接,测试服务器与接入服务器通过TCP连接进行交互。
用于进行TCP连接的TCP组件支持多线程连接,因此每个虚拟机器人为一个独立的线程,任一虚拟机器人通过该任一虚拟机器人对应的TCP连接与接入服务器进行交互。例如,参见图7,测试服务器中设置有5个虚拟机器人,5个机器人分别通过线程1、线程2、线程3、线程4和线程5,与接入服务器建立TCP连接。
其中,通过虚拟机器人与交互服务器建立用户数据报协议UDP连接,通过UDP连接进行交互。
可选地,当虚拟机器人为多个时,通过全局线程与交互服务器建立UDP连接,通过虚拟机器人与全局线程进行交互,由全局线程与交互服务器进行交互。用于进行UDP连接的UDP组件不支持多线程连接,因此多个虚拟机器人通过一个全局线程与交互服务器建立UDP连接。例如,参见图7,测试服务器中设置有5个虚拟机器人,5个机器人通过一个全局线程与交互服务器建立UDP连接。
当交互服务器要与全局线程中的任一虚拟机器人进行数据交互时,确定该任一虚拟机器人的虚拟机器人标识,交互服务器向全局线程发送携带该虚拟机器人标识的交互数据,测试服务器通过全局线程获取该交互数据,并将该交互数据发送给虚拟机器人标识对应的虚拟机器人进行处理。因此,通过将虚拟机器人标识添加至交互数据中,则可以根据该虚拟机器人标识来确定交互服务器与全局线程中的哪个虚拟机器人进行交互,解决了虚拟机器人的通信组件不支持多线程模式下UDP通信的问题。
405、应用服务器与登录应用服务器的第二终端进行交互。
第二终端安装有与应用程序标识对应的应用程序,该应用程序即为测试服务器进行测试的应用程序。因此,测试服务器发送给应用服务器的操作请求可能涉及到测试服务器与登录该应用服务器的第二终端之间的交互,则应用服务器在接收到测试服务器的操作请求时,与该第二终端进行交互,从而实现虚拟机器人与第二终端之间的交互。
也即是,当测试服务器需要与第二终端进行数据交互时,测试服务器通过虚拟机器人向应用服务器发送操作请求,应用服务器接收到该操作请求时将操作请求发送给第二终端,第二终端根据操作请求执行操作,得到操作结果,将操作结果发送给应用服务器,由应用服务器将该操作结果发送给测试服务器中的虚拟机器人。由此实现测试服务器与第二终端的交互。
406、第二终端获取应用程序的运行过程中的状态数据,将状态数据发送给测试服务器。
第二终端可以与测试服务器建立网络连接。第二终端通过应用程序与应用服务器进行交互过程中,可以获取该应用程序运行中的状态数据,将该状态数据发送给测试服务器进行处理。
其中,第二终端上的应用程序中运行有服务程序,也即是运行在应用程序中的线程逻辑代码,且该服务程序的线程与应用程序自身相互独立。该服务程序用于实现第二终端与测试服务器的网络连接。
可选地,该服务程序通过DLL(Dynamic Link Library,动态链接库)方式注入到该应用程序中。可选地,该服务程序通过反射方式获取应用程序运行过程中的状态数据。反射是指程序可以访问、检测和修改本身状态或行为的一种能力。
407、测试服务器接收第二终端发送的状态数据,响应状态数据。
测试服务器接收到第二终端发送的状态数据时,根据状态数据确定当前虚拟机器人的状态,根据虚拟机器人的状态执行对应的操作。
例如,测试服务器上的虚拟机器人与第二终端通过应用服务器进行游戏对战,第二终端将表示游戏对战结束的状态数据发送给测试服务器,当测试服务器接收到该状态数据时,确定当前虚拟机器人处于游戏对战结束状态,则测试服务器获取虚拟机器人的对战结果数据,如虚拟机器人在对战过程中的攻击数据、治疗数据、伤害数据等,测试服务器将对战结果数据发送给应用服务器,由应用服务器获取对战结果数据,将对战结果数据发送给第二终端,由第二终端将对战结果数据展示给测试人员,供测试人员查看。
其中,该状态数据还可以为其他类型的数据,测试服务器还可以根据状态数据执行其他操作,本申请实施例对此不做限定。
本申请实施例中,通过上述交互过程,实现了虚拟机器人与第二终端上的应用程序之间的交互,测试人员可以根据应用程序在交互过程中的运行情况,对应用程序的各方面功能进行测试,根据第二终端上应用程序的响应操作,即可直观地了解应用程序的测试结果。例如,测试人员测试游戏应用程序中某一游戏角色的技能,则通过第二终端上游戏应用程序展示的游戏画面即可得知该游戏角色的技能信息。
因此,在对第二终端上的应用程序进行测试时,无需在其他终端上安装应用程序,无需耗费过多的人力和时间,提高了测试效率,降低了测试成本。
在一种可能实现方式中,为了便于测试人员了解交互情况,测试服务器还可以根据交互过程中生成的交互数据,获取测试结果,将测试结果发送给第一终端。第一终端接收测试结果,将该测试结果存储下来,测试人员后续即可在第一终端上查询该测试结果。
其中,该交互数据包括虚拟机器人与应用服务器的交互过程中,由虚拟机器人产生的数据和第二终端上的应用程序产生的数据,还可以包括应用服务器产生的数据等。另外,还可以包括测试服务器与第二终端的交互过程中产生的数据。
可选地,测试服务器可以将该交互数据作为测试结果,或者对该交互数据进行统计,得到测试结果。例如对交互次数、交互时长、交互的操作类型等进行统计。
在一种可能实现的方式中,第一终端接收到测试结果时,在管理界面中显示该测试结果,测试人员可基于该管理界面查看该测试结果。
本申请实施例提供的方法,第一终端显示管理界面,基于管理界面检测到的设置操作生成测试任务,将测试任务发送给测试服务器,测试服务器接收第一终端发送的测试任务,调用虚拟机器人标识对应的虚拟机器人,登录与应用程序标识关联的应用服务器,通过虚拟机器人与应用服务器进行交互,应用服务器与登录应用服务器的第二终端进行交互。本申请实施例中,测试服务器调用虚拟机器人执行测试任务,由虚拟机器人代替应用程序,与待测试的应用程序进行交互,无需在其他终端上安装应用程序,也无需在测试过程中操作多个终端,减少了耗费的人力和时间,提高了测试效率,降低了测试成本。
并且,第一终端基于测试人员的设置操作生成测试任务,将测试任务发送给测试服务器,通过设置测试任务来控制测试服务器中的虚拟机器人,提高了虚拟机器人的易用性,测试应用程序的过程更加方便。
并且,测试服务器通过虚拟机器人分别与接入服务器建立TCP连接,与交互服务器建立UDP连接,采用两种方式实现测试服务器和应用服务器的网络连接,增强了测试服务器的适用性。而且通过全局线程与交互服务器建立UDP连接,通过虚拟机器人与全局线程进行交互,由全局线程与交互服务器进行交互,解决了虚拟机器人的通信组件不支持多线程模式下UDP通信的问题。
图8是本申请实施例提供的另一种应用程序测试方法的流程图。本申请实施例的交互主体为第一终端、测试服务器和第二终端,参见图8,该方法包括:
801、第一终端将获取的测试脚本发送给测试服务器。
当测试人员需要某一应用程序执行测试脚本,来完成对该应用程序的测试时,在第一终端上触发对该测试脚本的选择操作,第一终端检测到对该测试脚本的触发操作时,获取该测试脚本,将该测试脚本发送给测试服务器。
其中,测试脚本携带应用程序标识,该应用程序标识用于确定执行该测试脚本的应用程序。该测试脚本可以由测试人员上传至第一终端,或者由测试人员在第一终端上编写得到,还可以由其他计算机设备发送给第一终端,或者由第一终端通过其他途径获取该测试脚本,本申请对此不做限定。
在一种可能实现方式中,第一终端上运行有万维网Web控制程序,Web控制程序中包括管理界面入口,该管理界面入口用于触发显示管理界面。当测试人员需要设置测试任务时,基于Web控制程序触发对管理界面入口的操作,第一终端检测到对管理界面入口的触发操作时,显示管理界面。测试人员基于该管理界面设置待发送的测试脚本以及待测试的应用程序。
其中,Web控制程序可通过第一终端上运行的浏览器进行访问,或者通过第一终端上安装的其他应用程序进行访问,该Web控制程序用于实现第一终端与测试服务器的交互。
802、测试服务器将测试脚本发送给应用程序标识对应的第二终端。
该第二终端上安装有该应用程序标识对应的应用程序,测试服务器接收到测试脚本时,根据测试脚本中携带的应用程序标识,确定该应用程序标识对应的第二终端,测试服务器将该测试脚本发送给该第二终端。
在一种可能实现方式中,第二终端的应用程序中配置有网络通信组件,该网络通信组件用于建立第二终端与测试服务器的网络连接。测试服务器通过该网络连接,向第二终端发送测试脚本。
在另一种可能实现方式中,第二终端与测试服务器建立传输控制协议TCP连接,通过该TCP连接进行交互。测试服务器通过该TCP连接,向第二终端发送测试脚本。例如,参见图9,测试服务器通过终端应用程序管理模块分别与终端1、终端2、终端3、终端4、终端5建立TCP连接。
803、第二终端接收到测试脚本时执行测试脚本。
第二终端通过应用程序接收到测试脚本时,在应用程序中执行该测试脚本。
804、第二终端生成执行结果,将执行结果发送给测试服务器。
需要说明的是,上述步骤802-804和步骤406-407中测试服务器与第二终端交互的过程,都是由终端应用程序管理模块实现,如图10所示,该终端应用程序管理模块至少可以实现以下四个功能:
1、在应用程序中注入服务程序,无需重新配置数据包。
2、服务程序通过反射方式获取应用程序线程内产生的状态数据。
3、第二终端与测试服务器基于传输控制协议保证可靠连接。
4、服务程序获取状态数据并发送给测试服务器的过程为独立线程,不干扰应用程序的线程。
805、测试服务器将执行结果发送给第一终端。
806、第一终端接收该执行结果。
第一终端接收执行结果,将该执行结果存储下来,测试人员后续即可在第一终端上查询该执行结果。
在一种可能实现的方式中,第一终端接收到执行结果时,在管理界面中显示该执行结果,测试人员可基于该管理界面查看该执行结果。
需要说明的是,上述步骤804-806可以执行,也可以不执行。在本申请实施例中,由第二终端将测试脚本的执行结果通过测试服务器发送给第一终端,测试人员在第一终端中查询执行结果。而在另一实施例中,在第二终端执行测试脚本时,测试人员即可在通过该第二终端的执行情况直观地得到执行结果,完成测试任务。
本申请实施例提供的方法,第一终端将获取的测试脚本发送给测试服务器,测试服务器将测试脚本发送给应用程序标识对应的第二终端,第二终端接收到测试脚本时执行测试脚本。因此通过建立第二终端与测试服务器之间的网络连接,可以在第一终端配置测试脚本,由第一终端通过测试服务器直接调用第二终端执行测试脚本,实现了对应用程序的自动化测试。而且在同一时间可以向多个第二终端发送测试脚本,由多个第二终端并行执行该测试脚本,能够提高测试效率,节约测试时间。
本申请实施例可以应用于测试应用程序的任意场景下,例如,测试游戏应用程序的场景。
图11是本申请实施例提供的一种游戏应用程序测试方法的流程图,其中第一终端为运行有Web控制程序的PC(Personal Computer,个人计算机)端,第二终端为安装有游戏应用程序的测试终端,应用服务器为与该游戏应用程序关联的游戏服务器。参见图11,该方法包括:
1、测试人员在PC端登录Web控制程序,设置游戏PVP(Player Versus Player,玩家对战)测试任务。
其中游戏PVP测试任务涉及到5个玩家对战5个玩家,由于安装有该游戏应用程序的测试终端可执行其中一个玩家的操作,因此测试人员只需在管理界面中选择9个虚拟机器人作为虚拟玩家,进行游戏测试。则PC端基于测试人员的选择操作,生成包括9个机器人标识和游戏应用程序标识的测试任务。
2、PC端将该测试任务发送给测试服务器,测试服务器分别调用该9个虚拟机器人向游戏服务器发送登录请求,由游戏服务器响应登录请求,则9个虚拟机器人分别登录该游戏服务器。
3、测试终端基于测试人员的用户标识登录游戏应用程序,向游戏服务器发送携带房间号的对战请求。测试服务器通过9个虚拟机器人分别向游戏服务器发送携带该房间号的对战请求。由游戏服务器分别响应对战请求,测试终端的玩家与测试服务器上的9个虚拟玩家开始对战。
4、对战过程中,测试终端的真实玩家与测试服务器中的9个虚拟玩家通过游戏服务器进行游戏对战。
例如,真实玩家向游戏服务器发送对虚拟玩家A的攻击请求,游戏服务器将该攻击请求发送给测试服务器,由虚拟玩家A对应的虚拟服务器对该攻击请求作出响应。
5、测试终端通过游戏应用程序中的服务程序检测到游戏结束时,向测试服务器发送通知消息,通知游戏结束。
6、测试服务器确定游戏结束时,分别将9个虚拟玩家的游戏结果数据发送给游戏服务器,游戏服务器根据游戏结果数据生成游戏结果,将游戏结果发送给测试终端,由测试终端展示游戏结果。
7、测试人员根据测试终端展示的游戏对战画面以及游戏结果,获知测试结果。
图12是本申请实施例提供的一种应用程序测试装置的结构示意图,应用于测试服务器,参见图12,该装置包括:
接收模块1201,用于接收第一终端发送的测试任务,测试任务包括虚拟机器人标识和应用程序标识;
调用模块1202,用于调用虚拟机器人标识对应的虚拟机器人,登录与应用程序标识关联的应用服务器;
交互模块1203,用于通过虚拟机器人与应用服务器进行交互,应用服务器用于与登录应用服务器的第二终端进行交互,第二终端安装有与应用程序标识对应的应用程序。
可选地,参见图13,装置还包括:
获取模块1204,用于根据交互过程中生成的交互数据,获取测试结果;
第一发送模块1205,用于将测试结果发送给第一终端。
可选地,装置还包括:
接收模块1201,还用于接收第一终端发送的测试脚本,测试脚本携带应用程序标识;
第二发送模块1206,用于将测试脚本发送给应用程序标识对应的第二终端,第二终端用于执行测试脚本。
可选地,第二终端还用于在执行测试脚本后生成执行结果,装置还包括:
第三发送模块1207,用于当接收到第二终端发送的执行结果时,将执行结果发送给第一终端。
可选地,测试服务器包括万维网Web服务器和后台服务器,接收模块1201,包括:
转换单元1211,用于Web服务器接收第一终端发送的测试任务,将测试任务从第一数据格式转换为第二数据格式,向后台服务器发送第二数据格式的测试任务;
接收单元1221,用于后台服务器接收第二数据格式的测试任务。
可选地,交互模块1203,包括:
节点获取单元1213,用于根据虚拟机器人当前的状态查询测试行为树,得到状态对应的操作节点,测试行为树包括至少一个状态对应的操作节点;
第一发送单元1223,用于通过虚拟机器人向应用服务器发送与操作节点对应的操作请求,应用服务器用于响应操作请求。
可选地,交互模块1203,包括:
数据获取单元1233,用于获取当前的场景状态数据;
操作获取单元1243,用于基于操作预测模型,获取场景状态数据对应的操作类型;
第二发送单元1253,还用于通过虚拟机器人向应用服务器发送操作类型对应的操作请求。
可选地,装置还包括:
数据接收模块1208,用于接收第二终端发送的状态数据,状态数据由第二终端在应用程序的运行过程中获取;
响应模块1209,用于响应状态数据。
可选地,应用服务器包括接入服务器和交互服务器,交互模块1203,包括:
第一建立单元1263,用于通过虚拟机器人与接入服务器建立传输控制协议TCP连接,通过TCP连接进行交互;
第二建立单元1273,用于通过虚拟机器人与交互服务器建立用户数据报协议UDP连接,通过UDP连接进行交互。
可选地,第一建立单元1263,还用于当虚拟机器人为多个时,通过每个虚拟机器人分别与接入服务器建立TCP连接,通过TCP连接进行交互;
第二建立单元1273,还用于当虚拟机器人为多个时,通过全局线程与交互服务器建立UDP连接,通过虚拟机器人与全局线程进行交互,由全局线程与交互服务器进行交互。
需要说明的是:上述实施例提供的应用程序测试装置在测试应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将测试服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的应用程序测试装置与应用程序测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图14是本申请实施例提供的另一种应用程序测试装置的结构示意图,应用于第一终端,参见图14,该装置包括:
显示模块1401,用于显示与测试服务器关联的管理界面;
任务生成模块1402,用于基于管理界面检测到的设置操作,生成测试任务,测试任务包括虚拟机器人标识和应用程序标识;
发送模块1403,用于将测试任务发送给测试服务器,测试服务器用于调用虚拟机器人标识对应的虚拟机器人登录与应用程序标识关联的应用服务器,通过虚拟机器人与应用服务器进行交互,应用服务器用于与登录应用服务器的第二终端进行交互,第二终端安装有与应用程序标识对应的应用程序。
可选地,参见图15,测试服务器还用于根据交互过程中生成的交互数据,获取测试结果,装置还包括:
第一接收模块1404,用于接收测试服务器发送的测试结果,在管理界面中显示测试结果。
可选地,发送模块1403,还用于将获取的测试脚本发送给测试服务器,测试脚本携带应用程序标识,测试服务器用于将测试脚本发送给第二终端,第二终端用于执行测试脚本。
可选地,第二终端还用于在执行测试脚本后生成执行结果,发送给测试服务器,测试服务器还用于将测试结果发送给第一终端,装置还包括:
第二接收模块1405,用于接收测试服务器发送的执行结果。
需要说明的是:上述实施例提供的应用程序测试装置在测试应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第一终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的应用程序测试装置与应用程序测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图16是本申请实施例提供的另一种应用程序测试装置的结构示意图,应用于第二终端,参见图16,该装置包括:
接收模块1601,用于在应用程序的运行过程中,接收测试服务器发送的测试脚本;
执行模块1602,用于执行测试脚本后生成执行结果;
结果发送模块1603,用于将执行结果发送给测试服务器;
其中,测试脚本由第一终端发送给测试服务器,测试服务器用于调用虚拟机器人登录应用程序关联的应用服务器,通过虚拟机器人与应用服务器进行交互。
可选地,参见图17,装置还包括:
获取模块1604,用于获取应用程序的运行过程中的状态数据;
数据发送模块1605,用于将状态数据发送给测试服务器,测试服务器用于响应状态数据。
需要说明的是:上述实施例提供的应用程序测试装置在测试应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第二终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的应用程序测试装置与应用程序测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图18示出了本申请一个示例性实施例提供的终端1800的结构示意图。该终端1800可以用于执行上述应用程序测试方法中第一终端或第二终端所执行的步骤。
通常,终端1800包括有:处理器1801和存储器1802。
处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有GPU(Graphics Processing Unit,图像处理的交互器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一条程序代码,该至少一条程序代码用于被处理器1801所具有以实现本申请中方法实施例提供的应用程序测试方法。
在一些实施例中,设备1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、触摸显示屏1805、摄像头1806、音频电路1807、定位组件1808和电源1809中的至少一种。
外围设备接口1803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它设备进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及8G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1805是触摸显示屏时,显示屏1805还具有采集在显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。此时,显示屏1805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1805可以为一个,设置终端1800的前面板;在另一些实施例中,显示屏1805可以为至少两个,分别设置在终端1800的不同表面或呈折叠设计;在一些实施例中,显示屏1805可以是柔性显示屏,设置在终端1800的弯曲表面上或折叠面上。甚至,显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。显示屏1805可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端1800的前面板,后置摄像头设置在终端1800的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。
定位组件1808用于定位终端1800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1808可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1809用于为终端1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1814、光学传感器1815以及接近传感器1816。
加速度传感器1811可以检测以终端1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制触摸显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1812可以检测终端1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对终端1800的3D动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1813可以设置在终端1800的侧边框和/或触摸显示屏1805的下层。当压力传感器1813设置在终端1800的侧边框时,可以检测用户对终端1800的握持信号,由处理器1801根据压力传感器1813采集的握持信号进行左右手识别或快捷操作。当压力传感器1813设置在触摸显示屏1805的下层时,由处理器1801根据用户对触摸显示屏1805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1814用于采集用户的指纹,由处理器1801根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户具有相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置终端1800的正面、背面或侧面。当终端1800上设置有物理按键或厂商Logo时,指纹传感器1814可以与物理按键或厂商标志集成在一起。
光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制触摸显示屏1805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1805的显示亮度;当环境光强度较低时,调低触摸显示屏1805的显示亮度。在另一个实施例中,处理器1801还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。
接近传感器1816,也称距离传感器,通常设置在终端1800的前面板。接近传感器1816用于采集用户与终端1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变小时,由处理器1801控制触摸显示屏1805从亮屏状态切换为息屏状态;当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变大时,由处理器1801控制触摸显示屏1805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图19是本申请实施例提供的一种服务器的结构示意图,该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1901和一个或一个以上的存储器1902,其中,所述存储器1902中存储有至少一条程序代码,所述至少一条程序代码由所述处理器1901加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1900可以用于执行上述应用程序测试方法中测试服务器或应用服务器所执行的步骤。
本申请实施例还提供了一种用于测试应用程序的计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的应用程序测试方法中所具有的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的应用程序测试方法中所具有的操作。
本申请实施例还提供了一种计算机程序,该计算机程序包括至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的应用程序测试方法中所具有的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (20)

1.一种应用程序测试方法,其特征在于,应用于测试服务器,所述方法包括:
接收第一终端发送的测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
调用所述虚拟机器人标识对应的虚拟机器人,模拟所述应用程序标识对应的应用程序,登录与所述应用程序标识关联的应用服务器;
通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序;
所述通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,包括:
获取当前的场景状态数据;
基于操作预测模型,获取所述场景状态数据对应的操作类型;
通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
2.根据权利要求1所述的方法,其特征在于,所述通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互之后,所述方法还包括:
根据交互过程中生成的交互数据,获取测试结果;
将所述测试结果发送给所述第一终端。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第一终端发送的测试脚本,所述测试脚本携带所述应用程序标识;
将所述测试脚本发送给所述应用程序标识对应的所述第二终端,所述第二终端用于执行所述测试脚本。
4.根据权利要求3所述的方法,其特征在于,所述第二终端还用于在执行所述测试脚本后生成执行结果,所述将所述测试脚本发送给所述应用程序标识对应的所述第二终端之后,所述方法还包括:
当接收到所述第二终端发送的执行结果时,将所述执行结果发送给所述第一终端。
5.根据权利要求1所述的方法,其特征在于,所述测试服务器包括万维网Web服务器和后台服务器,所述接收第一终端发送的测试任务,包括:
所述Web服务器接收所述第一终端发送的测试任务,将所述测试任务从第一数据格式转换为第二数据格式,向所述后台服务器发送所述第二数据格式的测试任务;
所述后台服务器接收所述第二数据格式的测试任务。
6.根据权利要求1所述的方法,其特征在于,所述通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,包括:
根据所述虚拟机器人当前的状态查询测试行为树,得到所述状态对应的操作节点,所述测试行为树包括至少一个状态对应的操作节点;
通过所述虚拟机器人向所述应用服务器发送与所述操作节点对应的操作请求,所述应用服务器用于响应所述操作请求。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第二终端发送的状态数据,所述状态数据由所述第二终端在所述应用程序的运行过程中获取;
响应所述状态数据。
8.根据权利要求1所述的方法,其特征在于,所述应用服务器包括接入服务器和交互服务器,所述通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,包括:
通过所述虚拟机器人与所述接入服务器建立传输控制协议TCP连接,通过所述TCP连接进行交互;
通过所述虚拟机器人与所述交互服务器建立用户数据报协议UDP连接,通过所述UDP连接进行交互。
9.根据权利要求8所述的方法,其特征在于,所述通过所述虚拟机器人与所述接入服务器建立传输控制协议TCP连接,通过所述TCP连接进行交互,包括:
当所述虚拟机器人为多个时,通过每个虚拟机器人分别与所述接入服务器建立TCP连接,通过所述TCP连接进行交互;
所述通过所述虚拟机器人与所述交互服务器建立用户数据报协议UDP连接,通过所述UDP连接进行交互,包括:
当所述虚拟机器人为多个时,通过全局线程与所述交互服务器建立UDP连接,通过所述虚拟机器人与所述全局线程进行交互,由所述全局线程与所述交互服务器进行交互。
10.一种应用程序测试方法,其特征在于,应用于第一终端,所述方法包括:
显示与测试服务器关联的管理界面;
基于所述管理界面检测到的设置操作,生成测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
将所述测试任务发送给所述测试服务器,所述测试服务器用于调用所述虚拟机器人标识对应的虚拟机器人,模拟所述应用程序标识对应的应用程序,登录与所述应用程序标识关联的应用服务器,通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序;所述测试服务器还用于获取当前的场景状态数据,基于操作预测模型,获取所述场景状态数据对应的操作类型,通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
11.根据权利要求10所述的方法,其特征在于,所述测试服务器还用于根据交互过程中生成的交互数据,获取测试结果;
所述将所述测试任务发送给测试服务器之后,所述方法还包括:
接收所述测试服务器发送的测试结果,在所述管理界面中显示所述测试结果。
12.根据权利要求10所述的方法,其特征在于,所述方法还包括:
将获取的测试脚本发送给所述测试服务器,所述测试脚本携带所述应用程序标识,所述测试服务器用于将所述测试脚本发送给所述第二终端,所述第二终端用于执行所述测试脚本。
13.根据权利要求12所述的方法,其特征在于,所述第二终端还用于在执行所述测试脚本后生成执行结果,发送给所述测试服务器,所述测试服务器还用于将所述测试结果发送给所述第一终端;
所述将获取的测试脚本发送给所述测试服务器之后,所述方法还包括:
接收所述测试服务器发送的执行结果。
14.一种应用程序测试方法,其特征在于,应用于第二终端,所述方法包括:
在应用程序的运行过程中,接收测试服务器发送的测试脚本;
执行所述测试脚本后生成执行结果;
将所述执行结果发送给所述测试服务器;
其中,所述测试脚本由第一终端发送给所述测试服务器,所述测试服务器用于调用虚拟机器人模拟所述应用程序,登录所述应用程序关联的应用服务器,通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互;所述测试服务器还用于获取当前的场景状态数据,基于操作预测模型,获取所述场景状态数据对应的操作类型,通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
获取所述应用程序的运行过程中的状态数据;
将所述状态数据发送给所述测试服务器,所述测试服务器用于响应所述状态数据。
16.一种应用程序测试装置,其特征在于,应用于测试服务器,所述装置包括:
接收模块,用于接收第一终端发送的测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
调用模块,用于调用所述虚拟机器人标识对应的虚拟机器人,模拟所述应用程序标识对应的应用程序,登录与所述应用程序标识关联的应用服务器;
交互模块,用于通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序;
所述交互模块,还用于获取当前的场景状态数据,基于操作预测模型,获取所述场景状态数据对应的操作类型,通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
17.一种应用程序测试装置,其特征在于,应用于第一终端,所述装置包括:
显示模块,用于显示与测试服务器关联的管理界面;
任务生成模块,用于基于所述管理界面检测到的设置操作,生成测试任务,所述测试任务包括虚拟机器人标识和应用程序标识;
发送模块,用于将所述测试任务发送给所述测试服务器,所述测试服务器用于调用所述虚拟机器人标识对应的虚拟机器人,模拟所述应用程序标识对应的应用程序,登录与所述应用程序标识关联的应用服务器,通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互,所述应用服务器用于与登录所述应用服务器的第二终端进行交互,所述第二终端安装有与所述应用程序标识对应的应用程序;所述测试服务器还用于获取当前的场景状态数据,基于操作预测模型,获取所述场景状态数据对应的操作类型,通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
18.一种应用程序测试装置,其特征在于,应用于第二终端,所述装置包括:
接收模块,用于在应用程序的运行过程中,接收测试服务器发送的测试脚本;
执行模块,用于执行所述测试脚本后生成执行结果;
结果发送模块,用于将所述执行结果发送给所述测试服务器;
其中,所述测试脚本由第一终端发送给所述测试服务器,所述测试服务器用于调用虚拟机器人模拟所述应用程序,登录所述应用程序关联的应用服务器,通过所述虚拟机器人模拟所述应用程序,来与所述应用服务器进行交互;所述测试服务器还用于获取当前的场景状态数据,基于操作预测模型,获取所述场景状态数据对应的操作类型,通过所述虚拟机器人向所述应用服务器发送所述操作类型对应的操作请求。
19.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至9任一所述的应用程序测试方法,或者实现如权利要求10至13任一所述的应用程序测试方法,或者实现如权利要求14至15任一所述的应用程序测试方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至9任一所述的应用程序测试方法,或者实现如权利要求10至13任一所述的应用程序测试方法,或者实现如权利要求14至15任一所述的应用程序测试方法。
CN201911154050.4A 2019-11-22 2019-11-22 应用程序测试方法、装置、设备及存储介质 Active CN111045931B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911154050.4A CN111045931B (zh) 2019-11-22 2019-11-22 应用程序测试方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911154050.4A CN111045931B (zh) 2019-11-22 2019-11-22 应用程序测试方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111045931A CN111045931A (zh) 2020-04-21
CN111045931B true CN111045931B (zh) 2021-01-01

Family

ID=70232972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911154050.4A Active CN111045931B (zh) 2019-11-22 2019-11-22 应用程序测试方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111045931B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112364478A (zh) * 2020-09-30 2021-02-12 深圳市为汉科技有限公司 基于虚拟现实的测试方法及相关装置
CN112306884B (zh) * 2020-11-10 2024-07-05 广州华多网络科技有限公司 程序测试控制、执行方法及其相应的装置、设备、介质
CN112688830B (zh) * 2020-12-21 2022-09-16 深圳市汇顶科技股份有限公司 测试系统以及测试方法
CN112866388B (zh) * 2021-01-20 2022-11-04 网易(杭州)网络有限公司 服务器集群控制方法、装置、存储介质及电子设备
CN112882930B (zh) * 2021-02-04 2023-09-26 网易(杭州)网络有限公司 自动化测试方法、装置、存储介质及电子设备
CN113918447B (zh) * 2021-09-03 2022-11-11 北京荣耀终端有限公司 一种应用测试方法及电子设备
CN114398286A (zh) * 2022-01-19 2022-04-26 腾讯科技(深圳)有限公司 自动化测试方法、装置、电子设备及存储介质
CN114979029B (zh) * 2022-05-16 2023-11-24 百果园技术(新加坡)有限公司 一种虚拟机器人的控制方法、装置、设备及存储介质
CN117245646B (zh) * 2022-12-12 2024-09-24 北京小米机器人技术有限公司 机器人及其调试方法、装置、存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6381628B1 (en) * 1998-10-02 2002-04-30 Microsoft Corporation Summarized application profiling and quick network profiling
CN104657276A (zh) * 2015-03-13 2015-05-27 浪潮集团有限公司 一种配置iozone集群测试的方法
CN106021079A (zh) * 2016-05-06 2016-10-12 华南理工大学 一种基于用户频繁访问序列模型的Web应用性能测试方法
CN108681507A (zh) * 2018-05-08 2018-10-19 浪潮软件集团有限公司 一种实现RESTful API和web service服务自动化测试方法
CN109359043A (zh) * 2018-10-08 2019-02-19 广州云测信息技术有限公司 一种基于机器学习的移动游戏自动化测试方法
CN109614318A (zh) * 2018-11-14 2019-04-12 金色熊猫有限公司 自动化测试方法、装置、电子设备及计算机可读介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104598776B (zh) * 2013-10-31 2018-11-23 深圳市腾讯计算机系统有限公司 一种对软件进行测试的方法及装置
CN105511936B (zh) * 2014-09-22 2020-04-24 北京奇虎科技有限公司 测试系统、方法和装置
CN105893234B (zh) * 2014-12-30 2019-05-07 伊姆西公司 用于软件测试的方法和计算设备
CN105117346A (zh) * 2015-09-24 2015-12-02 上海爱数软件有限公司 虚拟化平台的分布式系统自动化测试方法及系统
CN106354546B (zh) * 2016-08-29 2019-11-22 北京奇虎科技有限公司 虚拟机远程控制方法和系统
CN107154895A (zh) * 2017-05-27 2017-09-12 珠海市魅族科技有限公司 一种消息传输方法及服务器、计算机装置及存储介质
CN107341103B (zh) * 2017-06-16 2020-06-02 广州云测信息技术有限公司 一种软件兼容性的测试方法及系统
US10769050B2 (en) * 2018-05-16 2020-09-08 Texas Instruments Incorporated Managing and maintaining multiple debug contexts in a debug execution mode for real-time processors

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6381628B1 (en) * 1998-10-02 2002-04-30 Microsoft Corporation Summarized application profiling and quick network profiling
CN104657276A (zh) * 2015-03-13 2015-05-27 浪潮集团有限公司 一种配置iozone集群测试的方法
CN106021079A (zh) * 2016-05-06 2016-10-12 华南理工大学 一种基于用户频繁访问序列模型的Web应用性能测试方法
CN108681507A (zh) * 2018-05-08 2018-10-19 浪潮软件集团有限公司 一种实现RESTful API和web service服务自动化测试方法
CN109359043A (zh) * 2018-10-08 2019-02-19 广州云测信息技术有限公司 一种基于机器学习的移动游戏自动化测试方法
CN109614318A (zh) * 2018-11-14 2019-04-12 金色熊猫有限公司 自动化测试方法、装置、电子设备及计算机可读介质

Also Published As

Publication number Publication date
CN111045931A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111045931B (zh) 应用程序测试方法、装置、设备及存储介质
CN109445577B (zh) 虚拟房间切换方法、装置、电子设备及存储介质
CN109815150B (zh) 应用测试方法、装置、电子设备及存储介质
CN111494965B (zh) 信息处理方法、装置、设备及存储介质
CN110795336A (zh) 应用程序的控制方法、装置、设备及可读存储介质
CN111177013A (zh) 日志数据获取方法、装置、计算机设备及存储介质
CN110496392B (zh) 虚拟对象的控制方法、装置、终端及存储介质
CN110225048B (zh) 数据传输方法、装置、第一终端及存储介质
CN110288689B (zh) 对电子地图进行渲染的方法和装置
CN111835531A (zh) 会话处理方法、装置、计算机设备及存储介质
CN113204298A (zh) 显示发布进度的方法、装置、电子设备及存储介质
CN112751679A (zh) 即时通讯消息处理方法、终端及服务器
CN108579075B (zh) 操作请求响应方法、装置、存储介质及系统
CN111062824A (zh) 群组成员处理方法、装置、计算机设备及存储介质
CN112468884A (zh) 动态资源显示方法、装置、终端、服务器及存储介质
CN110045958B (zh) 纹理数据生成方法、装置、存储介质及设备
CN112843703B (zh) 信息显示方法、装置、终端及存储介质
CN108228052B (zh) 触发界面组件运行的方法、装置、存储介质及终端
CN112367533B (zh) 交互业务的处理方法、装置、设备及计算机可读存储介质
CN112023403B (zh) 基于图文信息的对战过程展示方法及装置
CN111589143B (zh) 动画播放方法、装置、设备及存储介质
CN112274936A (zh) 虚拟道具的子道具补充方法、装置、设备及存储介质
CN109107163B (zh) 模拟按键检测方法、装置、计算机设备及存储介质
CN111760296A (zh) 组队处理方法、装置、终端、服务器及存储介质
CN112188268B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40021533

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant