CN111708704A - 一种云真机测试方法、装置、终端及存储介质 - Google Patents

一种云真机测试方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN111708704A
CN111708704A CN202010565156.XA CN202010565156A CN111708704A CN 111708704 A CN111708704 A CN 111708704A CN 202010565156 A CN202010565156 A CN 202010565156A CN 111708704 A CN111708704 A CN 111708704A
Authority
CN
China
Prior art keywords
test
cloud
function
application program
hardware environment
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
CN202010565156.XA
Other languages
English (en)
Other versions
CN111708704B (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 CN202010565156.XA priority Critical patent/CN111708704B/zh
Publication of CN111708704A publication Critical patent/CN111708704A/zh
Application granted granted Critical
Publication of CN111708704B publication Critical patent/CN111708704B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

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)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种云真机测试方法、装置、终端及存储介质,支持不同硬件环境的各个云真机中的每个云真机确定与其所支持的硬件环境适配的测试文件,适配于不同硬件环境的测试文件是由本地主机在模拟的各种不同的硬件环境下分别对应用程序执行测试操作生成的;云真机解析其所确定的测试文件得到测试信息,测试信息指示应用程序响应测试操作依次调用的各个函数信息;云真机执行其解析到的测试信息生成应用程序的测试结果。基于本发明,能够在降低云真机测试成本、提高云真机测试效率的基础上,便于实现对云真机测试过程的复现。

Description

一种云真机测试方法、装置、终端及存储介质
技术领域
本发明涉及软件测试技术领域,更具体地说,涉及一种云真机测试方法、装置、终端及存储介质。
背景技术
云真机是运行在远端的实体设备(实体设备可以为手机,比如android云真机),其是运行在远端的装载有操作系统的真机。云真机测试可以理解为是本地通过网络访问操作云真机以实现本地对安装在云真机上的应用程序的测试。
现有云真机测试需要测试人员分别对每个云真机进行远程人工操作,测试人员通过网络连接到远端的云真机,将测试人员在本地对远端的云真机上运行的应用程序执行的操作事件(比如,鼠标、键盘事件等)通过数据流的方式传递给远端的云真机,且由云真机通过视频流的方式将抓取到的云真机上应用程序的界面返回到本地进行显示。
这种现有云真机测试方式,所有与测试相关的操作都需要依赖于本地人工远程操作云真机实现,人工成本高,尤其是当远端存在大量不同机型的云真机需要验证时,工作量会随之成倍的增加,这个不利于应用程序开发过程中及时进行大规模云真机测试,特别是应用程序回归测试。而且当在云真机测试过程中发现应用程序的运行问题时,由于人工操作的随机性,是很难实现对运行问题的复现的。
发明内容
有鉴于此,本申请提供一种云真机测试方法、装置、终端及存储介质,以在降低云真机测试成本、提高云真机测试效率的基础上,便于实现对云真机测试过程的复现。技术方案如下:
一种云真机测试方法,包括:
至少一个云真机中每个所述云真机确定与其硬件环境适配的测试文件;不同的硬件环境适配不同的测试文件,所述测试文件是由本地主机在模拟的与所述测试文件适配的硬件环境下对应用程序执行测试操作生成的;
所述云真机解析其所确定的测试文件得到测试信息,所述测试信息指示所述应用程序响应所述测试操作依次调用的各个函数信息;
所述云真机执行其所解析到的测试信息生成所述应用程序的测试结果。
一种云真机测试方法,包括:
确定待模拟的硬件环境所支持的能力;
基于所述待模拟的硬件环境所支持的能力本地模拟所述硬件环境;
接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,录制所述应用程序响应所述测试操作依次调用的各个函数信息生成适配于所述硬件环境的测试文件。
一种云真机测试装置,包括:
测试文件确定单元,用于确定与其硬件环境适配的测试文件;不同的硬件环境适配不同的测试文件,所述测试文件是由本地主机在模拟的与所述测试文件适配的硬件环境下对应用程序执行测试操作生成的;
测试信息解析单元,用于解析所述测试文件得到测试信息,所述测试信息指示所述应用程序响应所述测试操作依次调用的各个函数信息;
测试单元,用于执行所述测试信息生成所述应用程序的测试结果。
一种云真机测试装置,包括:
能力确定单元,用于确定待模拟的硬件环境所支持的能力;
硬件环境模拟单元,用于基于所述待模拟的硬件环境所支持的能力本地模拟所述硬件环境;
测试文件录制单元,用于接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,录制所述应用程序响应所述测试操作依次调用的各个函数信息生成适配于所述硬件环境的测试文件。
一种终端,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述云真机测试方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行所述云真机测试方法。
本申请实施例提供一种云真机测试方法、装置、终端及存储介质,由本地主机确定位于远端的所有云真机所支持的各种硬件环境,并通过模拟各种不同的硬件环境的方式生成分别与每种硬件环境适配的测试文件,不同的硬件环境适配的测试文件不同,测试文件携带测试信息,测试文件的测试信息指示本地主机在模拟的与该测试文件适配的硬件环境下运行的应用程序响应测试操作依次调用的各个函数信息。相应的,位于远端的所有云真机中的每个云真机均可以确定与其所支持的硬件环境适配的测试文件、解析其所确定的测试文件得到测试信息,进而通过执行测试信息的方式得到应用程序的测试结果。
本申请不需要分别对每个云真机进行人工操作,降低了云真机测试成本、提高了云真机测试效率,并且基于录制、回放测试文件的方式可以实现对云真机测试过程的复现。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种现有云真机测试方法示意图;
图2为本申请实施例提供的一种云真机测试示意图;
图3为本申请实施例提供的一种接收对本地模拟的硬件环境下运行的应用程序执行的测试操作,录制应用程序响应测试操作依次调用的各个函数信息生成适配于硬件环境的测试文件的方法流程图;
图4为本申请实施例提供的一种录制场景示意图;
图5为本申请实施例提供的一种回放场景示意图;
图6为本申请实施例提供的录制回放示意图;
图7为本申请实施例提供的一种本地主机架构图;
图8为本申请实施例提供的一种云真机测试方法所使用的终端的硬件结构框图;
图9为本申请实施例提供的一种云真机测试装置的结构示意图;
图10为本申请实施提供的另一种云真机测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
云真机是指将实体设备运行在远端,通过网络访问操作该实体设备,达到提高操作效率的方式。云真机就是远端实体设备,是运行在远端的真机;Android云真机是运行在远端的装载Android操作系统的真机。
现有技术,远端可以提供多台云真机,若要实现对某个应用程序的测试,需要在云真机上安装该应用程序,进而由本地通过网络访问远端的云真机,由本地工作人员远程控制云真机上的应用程序,以实现对云真机上应用程序的测试。
参见图1为现有云真机测试方法示意图,本地主机通过网络连接云真机,云真机接收本地主机对应用程序的输入事件(鼠标、键盘等事件)、调用渲染函数执行渲染操作,相应的,云真机还可以从其显示缓冲区读取应用程序的界面图像数据,执行编码指令对界面图像数据进行编码操作,并将被编码后的界面图像数据返回给本地主机,以便于本地主机对其接收到的编码后的界面图像数据进行解码实现对界面图像数据的显示。
其中,显示缓冲区通常称为framebuffer,显示器会从显示缓冲区读取图像数据进行显示,由此将图像数据称为界面图像数据。
这种云真机测试方式需要依赖于本地人工操作、人工成本高、测试效率低;尤其是当远端存在大量不同机型的云真机的情况下,针对每种机型而言至少需要对该机型的一台云真机上的应用程序进行测试,进一步增加了人工成本、降低了测试效率。特别是对云真机上应用程序的回归测试,每次应用程序涉及到代码修改均需要进行一次覆盖所有机型的云真机测试,人工测试工作量随之成倍增加、测试效率进一步降低。其中,回归测试通常称为regression测试,指当前版本测试有问题发现,而在之前版本中测试通过。
可见,现有云真机测试方式不仅存在人工成本高、测试效率低的问题,而且在云真机测试过程中发现应用程序的运行问题时,由于人工操作的随机性,是不能够实现对应用程序的运行问题的精确复现的。
本申请实施例提供的一种云真机测试方法、装置、服务器及存储介质,可应用于云真机测试场景,在应用程序开发过程中,通过及时在云真机上进行自动测试,不仅能够降低人工成本、提高测试效率,而且可以及早发现应用程序代码中对于各个不同机型的适配问题,也可以及早发现开发过程中出现的regression问题。
需要说明的是,本申请实施例提供的一种云真机测试方法,更加侧重解决的是游戏应用程序在Android云真机环境下的测试需求,实现对安装在Android云真机上的游戏应用程序的测试,解决现有云真机测试方式中所有的游戏操作均通过人工操作的方式在本地完成对游戏内各个场景的验证的问题。
下面结合图2对本申请实施例提供的一种云真机测试方法进行详细说明。图2为本申请实施例提供的一种云真机测试方法示意图。
如图2所示,该方法包括:
S201、本地主机对位于远端的各个云真机按照所支持的能力进行分类,将支持相同能力的各个云真机确定为一组云真机;
本申请实施例,远端可以分别针对多种机型中的每种机型设置一个或多个云真机以用于应用程序测试,并确定每种机型所支持的能力,将位于远端的支持的能力相同的各个机型的云真机确定为一组云真机。
比如,远端一共设置有5台云真机,分别为云真机1、云真机2、云真机3、云真机4和云真机5,其中,云真机1、云真机2均属于机型1,云真机3属于机型2,云真机4和云真机5均属于机型3;若机型1和机型2所支持的能力相同,且机型1和机型2所支持的能力与机型3所支持的能力不同,则可以将云真机1、云真机2和云真机3作为一组云真机,云真机4和云真机5作为一组云真机。
需要说明的是,以上仅仅是为了便于理解进行的举例说明,实际远端所设置的云真机所涉及到的机型的种类、云真机的数量是很庞大的,有关远端设置的所有云真机所涉及到的机型的种类、云真机的数量发明人可根据自己的需求进行设置,在此不做限定。
本申请实施例中,不同的机型提供的硬件环境可能不同,硬件环境的不同导致了其所支持的能力的不同。其中,硬件环境所支持的能力可以为显卡能力。显卡是游戏程序渲染指令执行的硬件载体,通常称为GPU,用于点、直线、三角形等基础图形的绘制以及显示,或用于对图像的硬件编码操作。
机型所支持的显卡能力可以通过机型所支持的OPENGLES extension列表体现,OPENGLES extension列表中每个OPENGLES extension代表机型所支持的一项显卡能力,每项显卡能力OPENGLES extension通过依次调用一个或多个OPENGLES函数实现。
以OPENGLES函数为例,对于不同的机型而言,支持OPENGLES函数的能力是不同的,针对一个OPENGLES函数而言,可能在有的机型中该OPENGLES函数可以被支持,有的机型中该OPENGLES函数不能被支持;由此,可能存在一种机型提供的某个显卡能力(为了便于区分,暂时称为显卡能力1)用于实现的功能和另一种机型提供的某个显卡能力(为了便于区分,暂时称为显卡能力2)用于实现的功能相同,但是显卡能力1在实现功能时所调用的OPENGLES函数序列和显卡能力2在实现功能时所调用的OPENGLES函数序列不同,显卡能力1和显卡能力2不同。
例如,显卡能力1提供压缩纹理格式的支持,显卡能力2也提供压缩纹理格式的支持,但是显卡能力1提供的是ASTC格式的压缩纹理格式支持,而显卡能力2提供的是ETC2格式的压缩纹理格式支持。显卡能力1和显卡能力2不同。
本申请实施例,若两个显卡能力实现的功能不同,则两个显卡能力是不同的;若两个显卡能力实现的功能相同且在实现功能时调用的OPENGLES函数序列相同,则认为这两个显卡能力是相同的。
比如,远端一共设置有5台云真机,分别为云真机1、云真机2、云真机3、云真机4和云真机5,其中,云真机1、云真机2均属于机型1,云真机3属于机型2,云真机4和云真机5均属于机型3;获取机型1所支持的OPENGLES extension列表1、机型2所支持的OPENGLESextension列表2和机型3所支持的OPENGLES extension列表3;若OPENGLES extension列表1包括OPENGLES extension1和OPENGLES extension2,OPENGLES extension列表2包括OPENGLES extension1和OPENGLES extension2;OPENGLES extension列表3包括OPENGLESextension1、OPENGLES extension2和OPENGLES extension3,则认为机型1和机型2所支持的能力相同,且机型1和机型2所支持的能力与机型3所支持的能力不同,则可以将云真机1、云真机2和云真机3作为一组云真机,云真机4和云真机5作为一组云真机。
S202、本地主机分别将每组云真机所支持的能力确定为待模拟的硬件环境所支持的能力,能力为显卡能力;
本申请实施例,在将远端的所有云真机划分成多组云真机后,分别将每组云真机所支持的能力确定为待模拟的硬件环境所支持的能力,针对所确定的每个待模拟的硬件环境所支持的能力而言,执行步骤S203-S204得到与该待模拟的硬件环境适配的测试文件。
比如,仍以上述实例为例,在将远端的云真机1、云真机2和云真机3作为一组云真机(为了便于区分将该组云真机称为云真机组1),云真机4和云真机5作为一组云真机(为了便于区分将该组云真机称为云真机组2)后,将云真机组1所支持的硬件能力确定为待模拟的硬件环境所支持的能力并执行步骤S203-S204生成与云真机组1所支持的能力适配的测试文件1,以及,将云真机组2所支持的能力确定为待模拟的硬件环境所支持的能力并执行步骤S203-S204生成与云真机组2所支持的能力适配的测试文件2。
需要说明的是,如果将云真机组1所支持的硬件能力确定为待模拟的硬件环境所支持的能力并执行步骤S203-S204时所涉及到的对应用程序执行的操作操作看成是测试操作1,将与将云真机组2所支持的硬件能力确定为待模拟的硬件环境所支持的能力并执行步骤S203-S204时所涉及到的对应用程序执行的测试操作看成是测试操作2,测试操作1可以与测试操作2相同,测试操作1也可以与测试操作2不同。
比如,在将两个云真机组所支持的能力分别确定为待模拟的硬件环境所支持的能力,并在本地主机上分别模拟出待模拟的这两个硬件环境后,针对模拟出的这两个硬件环境中的每个硬件环境而言,本地主机在模拟出的该硬件环境下运行应用程序,并由测试人员对该运行的应用程序进行测试操作,相应的,本地主机可以接收该测试操作并录制应用程序响应该测试操作依次调用的各个函数信息生成与该硬件环境匹配的测试文件。
需要说明的是,针对在本地主机上模拟出的这两个硬件环境而言,分别在每个硬件环境上运行该应用程序,以便于针对每个硬件环境,根据测试人员对该硬件环境上运行的应用程序的测试操作生成该硬件环境匹配的测试文件。测试人员对不同的硬件环境上运行的应用程序执行的测试操作可能不同,尤其针对游戏应用程序而言,人工执行的对游戏应用程序的测试操作是很难复现的,针对模拟出的两个硬件环境上运行的应用程序所执行的测试操作是很难完全相同的。
S203、本地主机基于待模拟的硬件环境所支持的能力本地模拟硬件环境;
在本申请实施例中,本地主机基于待模拟的硬件环境所支持的能力在该本地主机本地模拟该待模拟的硬件环境。本地主机可以利用模拟器/容器基于待模拟的硬件环境所支持的能力达到模拟硬件环境的目的。以Android模拟器为例,由于硬件环境是通过模拟器软件(例如QEMU)模拟而来,因此通过调整相关的模拟硬件参数即可完成。比如,调整相关的模拟硬件参数达到提供待模拟的硬件环境所支持的能力的目的,由此实现对待模拟的硬件环境的模拟。
模拟器/容器是操作系统级虚拟化的一种类型。
模拟器:通过软件(例如QEMU)模拟多个不同的硬件环境,多个操作系统运行在不同的模拟硬件环境中,具有独立的内核态和用户态,相互独立。
容器:通过隔离机制(例如namespace),在内核态,多个操作系统共用同一内核,在用户态,多个操作系统保持相互独立。
Android模拟器/容器:模拟器/容器的一种实例,通常在Linux操作系统上同时运行多个Android操作系统。
S204、本地主机接收对本地模拟的硬件环境下运行的应用程序执行的测试操作,录制应用程序响应测试操作依次调用的各个函数信息生成适配于硬件环境的测试文件;
本申请实施例中,本地主机确定待模拟的硬件环境,并通过模拟器/容器在本地主机模拟出该待模拟的硬件环境后,可以基于该模拟出的硬件环境在该本地主机加载操作系统,并在该操作系统运行应用程序;相应的,本地主机侧的用户可以对该应用程序执行测试操作,本地主机接收对该应用程序的测试操作,录制应用程序响应该测试操作依次调用的各个函数信息,并基于录制的应用程序依次调用的各个函数信息生成与该模拟出的硬件环境适配的测试文件。
本地主机在确定远端的各个云真机组后,可以针对每个云真机组生成与该云真机组适配的测试文件,与云真机组适配的测试文件可以认为是与云真机组所支持的能力适配的测试文件。本申请有关录制测试文件的具体方式请参见下文对图3-4的描述,在此不做限定。
S205、云真机确定与其硬件环境适配的测试文件;
本申请实施例,云真机的硬件环境可以认为是云真机所支持的硬件环境;针对远端的每个云真机组,从该云真机组中选取预设数量的云真机,将从各个云真机组中选取的所有云真机确定为用于对应用程序进行测试的云真机。
比如,远端一共存在3个云真机组,分别为云真机组1、云真机组2和云真机组3,若预设数量为1,则从云真机组1中选取1个云真机,从云真机组2中选取1个云真机,从云真机组3中选取1个云真机,并将从云真机组1中选取的1个云真机,从云真机组2中选取的1个云真机以及从云真机组3中选取的1个云真机作为用于对应用程序进行测试的云真机。
以上仅仅是本申请实施例提供的预设数量的优选内容,有关预设数量的具体数值发明人可根据自己的需求进行设置,在此不做限定。
关于从云真机组中选取预设数量的云真机的方式可以为随机,或选取当前空闲的云真机等等,有关从云真机组中选取预设数量的云真机的优选方式,发明人可根据自己的需求进行设置,在此不做限定。
本申请实施例,针对所确定的用于对应用程序进行测试的每个云真机而言,均执行步骤S205-S207,以使得所确定的每个用于对应用程序进行测试的云真机均可以实现对应用程序的测试。
作为本申请实施例的一种优选实施方式,可以由本地主机确定用于对应用程序进行测试的各个云真机,进而针对所确定的每个云真机,由该本地主机向该云真机发送与该云真机的硬件环境适配的测试文件,相应的,用于对应用程序进行测试的云真机可以将其接收到的测试文件作为其所确定的与其硬件环境适配的测试文件。
作为本申请实施例的另一种优选实施方式,本地主机在生成分别与远端的每个云真机组适配的测试文件后,将生成的各个测试文件分别发送给每个用于对应用程序进行测试的云真机,进而由云真机从其接收到的各个测试文件中确定与其硬件能力适配的测试文件。
以上仅仅是本申请实施例提供的云真机确定与其硬件环境适配的测试文件的优选方式,有关云真机确定与其硬件环境适配的测试文件的具体方式,发明人可根据自己的需求进行设置,在此不做限定。
S206、云真机解析其所确定的测试文件得到测试信息,测试信息指示应用程序响应测试操作依次调用的各个函数信息;
本申请实施例中,云真机在确定与其硬件环境适配的测试文件后,可以解析测试文件得到测试信息,该测试信息包括在生成该测试文件时应用程序响应用于生成该测试文件的测试操作依次调用的各个函数信息。
S207、云真机执行其解析到的测试信息生成应用程序的测试结果。
本申请实施例中,云真机解析测试文件得到的测试信息指示应用程序响应测试操作依次调用的各个函数信息,可以将应用程序响应测试操作依次调用的各个函数信息看成是函数信息序列,云真机在解析测试文件得到函数信息序列后,依次调用并执行函数信息序列中的每个函数信息,实现对在生成测试文件时对该应用程序执行的测试操作的回放,得到在该云真机上对该应用程序的测试结果。
云真机解析测试文件得到测试信息后,可以确定测试信息中当前未被调用且调用顺序最靠前的函数信息,调用应用程序的第一动态库中与当前被确定的函数信息对应的目标函数,并在目标函数执行完成后,判断当前测试信息中是否存在未被调用的函数信息,若当前测试信息中存在未被调用的函数信息,返回执行“确定测试信息中当前未被调用且调用顺序最靠前的函数信息”过程;若当前测试信息中不存在未被调用的函数信息,确定测试完成。
在本申请实施例中,函数信息携带函数名和参数信息,可以将应用程序的第一动态库中与当前被确定的函数信息携带的函数名同名的函数确定为目标函数。在确定应用程序的第一动态库中与当前被确定的函数信息对应的目标函数后,可以利用当前被确定的函数信息携带的参数信息执行该被确定的目标函数。
第一动态库为应用程序自身加载的真实动态库,在测试文件录制过程中还会涉及到第二动态库,该第二动态库不为应用程序自身加载的真实动态库,是预先设置在本地主机的模拟动态库,第一动态库中包括多个函数(为了便于区分,可以将第一动态库中包括的函数称为第一函数),针对第一动态库中每个函数的函数名,在第二动态库中均存储有相应的同名函数。即,针对第一动态库中每个第一函数,在第二动态库中均有一个第二函数的函数名与该第一函数的函数名相同。有关第一动态库和第二动态库的具体内容请参见图3的详细描述,在此不做限定。
图3为本申请实施例提供的一种接收对本地模拟的硬件环境下运行的应用程序执行的测试操作,录制应用程序响应测试操作依次调用的各个函数信息生成适配于硬件环境的测试文件的方法流程图。
如图3所示,该方法包括:
S301、接收对本地模拟的硬件环境下运行的应用程序执行的测试操作,在应用程序响应测试操作调用应用程序的第一动态库中的第一函数之前,调用第二动态库中与第一函数同名的第二函数;第二函数用于记录待生成的与硬件环境适配的测试文件中的函数信息,函数信息携带第一函数的函数名以及在调用第一函数时的参数信息;
本申请实施例中,不论是安装在本地主机还是安装在云真机的应用程序自身均加载第一动态库,本地主机在安装应用程序后还会预先设置第二动态库。可以理解为第一动态库为应用程序自身加载的真实动态库,第二动态库为用来模拟第一动态库的模拟动态库,第一动态库中包括多个函数(第一函数),针对第一动态库中每个函数(第一函数),在第二动态库中均携带一个与该函数(第一函数)同名的函数(第二函数),需要说明的是,为了便于区分将第一动态库中的函数称为第一函数,将第二动态库中的函数称为第二函数。
另外,需要说明的是,同名的第一函数和第二函数的功能并不相同,第一函数的功能为应用程序自身在设置该第一函数时所要实现的功能,而第二函数的功能是为了在应用程序调用并执行第一函数时,记录第一函数的函数名和调用并执行第一函数时涉及到的参数信息。
参见图4为本申请实施例提供的一种录制场景示意图,测试文件的生成过程可以认为是测试文件的录制过程,本地主机在模拟出硬件环境后,可以在硬件环境中加载操作系统(比如Android操作系统),并在加载的操作系统上运行应用程序(比如,Android应用程序);相应的,用户可以对该应用程序执行测试操作(比如,用户通过本地主机的键盘、鼠标事件等实现对本地主机上应用程序的操作,将用户对本地主机上应用程序的操作称为测试操作)。
现有技术本地主机未设置录制模块,应用程序可以响应测试操作调用该应用程序的第一动态库中函数并生成函数的执行结果。
而本申请实施例提供的一种云真机测试方式,在本地主机设置了录制模块,在应用程序响应测试操作调用该应用程序的第一动态库中的函数(为了便于区分,该函数被称为第一函数)之前,先引导至调用第二动态库中与该待被调用的第一函数的函数名相同的第二函数,执行该第二函数记录该待被调用的第一函数的函数名和与该待被调用的第一函数相关的参数信息,在记录完成该待被调用的第一函数的函数名和与该待被调用的第一函数相关的参数信息后,调用第一动态库中该待被调用的第一函数。其中,该待被调用的第一函数的函数名和与该待被调用的第一函数相关的参数信息构成一条函数信息,将该条函数信息存储至本地主机以实现对该条函数信息的记录。
S302、在调用完成第二函数后返回调用第一函数。
比如,第一动态库包括函数1和函数2,第二动态库包括函数3和函数4,其中,函数1和函数3的函数名相同,函数2和函数4的函数名相同;应用程序响应测试操作若需要调用第一动态库中的函数1,则在调用函数1之前先调用第二动态库中的函数3,并执行函数3以记录函数1的函数名以及与函数1相关的参数信息,并在执行完成函数3后返回执行函数1,需要说明的是,上述在执行函数3时记录的与函数1相关的参数信息是在执行函数1时所用到的参数信息。
对于Android系统而言,游戏应用程序的渲染主要通过调用渲染函数来完成的,通常是OPENGLES或VULKAN等相关函数的调用,在本地主机对游戏应用程序执行测试操作的过程中,截获游戏应用程序中渲染函数的调用序列和与被调用的渲染函数相关参数信息,并存成相应的测试文件。以便于在回放过程中,在云真机上运行回放工具,通过解析之前生成的测试文件,按顺序执行渲染函数序列,从而达到和录制时一致的渲染场景。
图5为本申请实施例提供的一种回放场景示意图。回放过程是录制过程的逆过程,在云真机实现一个单独的程序作为回放工具,云真机中的应用程序在确定与该云真机的硬件环境适配的测试文件后,读取并解析该测试文件得到测试信息,该测试信息包括函数信息序列,依次从该应用程序加载的第一动态库中调用并执行该函数信息序列中的每个函数信息对应的目标函数,以实现对用于生成该测试文件的测试过程的回放,回放结果可以认为是云真机对应用程序的测试结果。回放结果可以为云真机在执行目标函数时云真机的界面渲染结果,进一步的,云真机还可以通过视频流的方式将回放结果传送到本地主机,以便于本地主机一侧的用户对回放结果的观看。该过程相当于还原了在生成测试文件时依次调用的各个渲染函数,之后通过调用实际加载的第一动态库中的各个真实的渲染函数得到了真实的渲染结果。
本申请实施例可以实现一个单独的Android应用程序作为回放工具。需要说明的是,和本地窗口相关的一些操作,也需要在回放工具中单独实现。
参见图6为本申请实施例提供的录制回放示意图。本地主机对应用程序响应测试操作依次调用的各个函数信息进行录制,将录制到的依次调用的各个函数信息看成是函数信息序列,将函数信息序列生成测试文件;相应的,云真机可以解析测试文件还原出函数信息序列,并基于云真机中应用程序的第一动态库依次执行函数信息序列中每个函数信息实现测试操作的回放。函数信息携带函数名和参数信息,回放过程中执行函数信息的方式可以为利用函数信息携带的参数信息执行第一动态库中具有函数信息携带的函数名的函数。
本申请实施例中,录制的过程可以在Android模拟器/容器上进行,回放的过程在云真机上进行。用户在Android模拟器/容器中运行游戏,游戏调用渲染函数进行渲染操作,在渲染函数执行的过程中,函数名称和相关参数信息被记录并保存至测试文件中,之后这个测试文件就可以被用来进行回放操作。将录制后的文件拷贝至云真机,并在云真机中安装回放工具,通过运行该回放工具,即可回放刚才录制的函数序列。
图7为本申请实施例提供的一种本地主机架构图。
结合图7可知,本地主机可以通过Android模拟器/容器进行硬件模拟,模拟出的硬件环境可以涉及到CPU、Memory、GPU等硬件环境。在模拟出的硬件环境下可以加载Android操作系统,该Android操作系统提供Android模块,比如,用于实现渲染功能的渲染模块、用于实现编码功能的编码模块、用于实现事件输入的输入事件模块等等,其中,若Android操作系统本身未自带编码模块的情况下,可以人工编写编码模块并将其加载到Android操作系统。在此基础上,可以在本地主机上加载的Android操作系统上安装应用程序APP,接收对应用程序的测试操作录制与模拟出的硬件环境匹配的测试文件,以便于具有该硬件环境的云真机可以基于该测试文件实现对测试操作过程的回放。
本申请实施例提供的一种云真机测试方法通过录制、回放进行云真机测试有以下几个好处:第一、减少人工操作的次数;第二、在执行录制回放操作前,先对所有的云真机进行OPENGLES extension统计归类,将提供相同OPENGLES extension能力的机型归为同一类(即,将提供相同OPENGLES extension能力的机型归为同一组),在Android模拟器/容器上模拟显卡能力,使之提供与该OPENGLES extension相同的能力,在当前环境下录制OPENGLES函数调用序列(即函数信息序列),则该OPENGLES函数调用序列只需要在具有相同OPENGLES extension的云真机上回放一次即可。通过这种方式,需要人工操作的机型仅仅是具有不同OPENGLES extension的机型。另外,在录制阶段,只需要在同一个模拟器/容器上通过调整不同配置即可模拟属于不同组的机型。第三、问题可复现,回放过程通过在云真机上运行回放工具即可自动完成,回放过程无须人工干预。因此在回放中如果遇到花屏、奔溃、黑屏等现象,通过再次运行回放工具,即可再次复现。
本申请通过归类的方法,节省了人工操作的工作量;通过自动化的方法,使得问题的定位变得简单。
图8为本申请实施例提供的一种云真机测试方法所使用的终端的硬件结构框图。
如图8所示该终端可以包括:处理器801、存储器802、通信接口803、输入单元804和显示器805和通信总线806。
存储器802中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本发明实施例中,该存储器中至少存储有用于实现以下功能的程序:
支持不同硬件环境的各个云真机中的每个云真机确定与其所支持的硬件环境适配的测试文件,适配于不同硬件环境的测试文件是由本地主机在模拟的各种不同的硬件环境下分别对应用程序执行测试操作生成的;云真机解析其所确定的测试文件得到测试信息,测试信息指示应用程序响应测试操作依次调用的各个函数信息;云真机执行其解析到的测试信息生成应用程序的测试结果;
或者,
确定待模拟的硬件环境所支持的能力;基于待模拟的硬件环境所支持的能力本地模拟硬件环境;接收对本地硬件环境下运行的应用程序执行的测试操作,录制应用程序响应测试操作依次调用的各个函数信息生成适配于硬件环境的测试文件。
即,该存储器中存储的程序用于实现上述实施例提供的云真机测试方法。
可选的,程序的细化功能和扩展功能可参照下文描述。
处理模块801、存储器802、通信接口803、输入单元804、显示器805、均通过通信总线806完成相互间的通信。
在本发明实施例中,该处理器801,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路(application-specific integrated circuit,ASIC),数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件等。
该处理器可以调用并执行存储器802中存储的程序。
该通信接口803可以为通信模块的接口,如GSM模块的接口。
本发明还可以包括输入单元804,该输入单元可以包括感应触摸显示面板上的触摸事件的触摸感应单元、键盘等等。
该显示器805包括显示面板,如触摸显示面板等。在一种可能的情况中,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-EmittingDiode,OLED)等形式来配置显示面板。
当然,图8所示的终端结构并不构成对本发明实施例中终端的限定,在实际应用中终端可以包括比图8所示的更多或更少的部件,或者组合某些部件。
图9为本申请实施例提供的一种云真机测试装置的结构示意图。
如图9所示,该装置包括:
测试文件确定单元91,用于确定与云真机所支持的硬件环境适配的测试文件,适配于不同硬件环境的测试文件是由本地主机在模拟的各种不同的硬件环境下分别对应用程序执行测试操作生成的;
测试信息解析单元92,用于解析测试文件得到测试信息,测试信息指示应用程序响应测试操作依次调用的各个函数信息;
测试单元93,用于执行测试信息生成应用程序的测试结果。
在本申请实施例中,优选的,测试文件确定单元,包括:
测试文件确定子单元,用于针对位于远端的所有云真机支持的每种硬件环境,由支持该种硬件环境的预设数量的云真机中的每个云真机确定与该种硬件环境适配的测试文件。
在本申请实施例中,优选的,测试单元,包括:
第一确定单元,用于确定解析到的测试信息中当前为被调用且调用顺序最靠前的函数信息,函数信息携带函数名;
第一调用单元,用于调用应用程序的第一动态库中的目标函数,并在执行完成目标函数后返回执行“测试信息解析单元”;
其中,目标函数的函数名为当前确定的函数信息携带的函数名,第一动态库为应用程序的真实动态库。
图10为本申请实施提供的另一种云真机测试装置的结构示意图;
如图10所示,该装置包括:
能力确定单元101,用于确定待模拟的硬件环境所支持的能力;
硬件环境模拟单元102,用于基于待模拟的硬件环境所支持的能力本地模拟硬件环境;
测试文件录制单元103,用于接收对本地硬件环境下运行的应用程序执行的测试操作,录制应用程序响应测试操作依次调用的各个函数信息生成适配于硬件环境的测试文件。
在本申请实施例中,优选的,能力确定单元,包括:
第二确定单元,用于对位于远端的各个云真机按照所支持的能力进行分类,将支持相同能力的各个云真机确定为一组云真机;
第三确定单元,用于分别将每组云真机所支持的能力确定为待模拟的硬件环境所支持的能力,能力为显卡能力。
在本申请实施例中,优选的,测试文件录制单元,包括:
第二调用单元,用于接收对本地硬件环境下运行的应用程序执行的测试操作,在应用程序响应测试操作调用应用程序的第一动态库中的第一函数之前,调用第二动态库中与第一函数同名的第二函数;第二函数用于记录待生成的与硬件环境适配的测试文件中的函数信息,函数信息携带第一函数的函数名以及在调用第一函数时的参数信息;
返回单元,用于在调用完成第二函数后返回调用第一函数。
进一步的,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述云真机测试方法。
可选的,计算机可执行指令的细化功能和扩展功能可参照上文描述。
本申请实施例提供一种云真机测试方法、装置、终端及存储介质,由本地主机确定位于远端的所有云真机所支持的各种硬件环境,并通过模拟各种不同的硬件环境的方式生成分别与每种硬件环境适配的测试文件,与硬件环境适配的测试文件携带测试信息,该测试信息指示本地主机在模拟的该种硬件环节下运行的应用程序响应测试操作依次调用的各个函数信息;相应的,位于远端的支持不同硬件环境的各个云真机中的每个云真机可以确定与其所支持的硬件环境适配的测试文件、解析其所确定的测试文件得到测试信息,进而通过执行测试信息的方式得到应用程序的测试结果。
本申请降低了云真机测试成本、提高了云真机测试效率,并且基于录制、回放测试文件的方式可以实现对云真机测试过程的复现。
以上对本发明所提供的一种云真机测试方法、装置、终端及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种云真机测试方法,其特征在于,包括:
至少一个云真机中每个所述云真机确定与其硬件环境适配的测试文件;不同的硬件环境适配不同的测试文件,所述测试文件是由本地主机在模拟的与所述测试文件适配的硬件环境下对应用程序执行测试操作生成的;
所述云真机解析其所确定的测试文件得到测试信息,所述测试信息指示所述应用程序响应所述测试操作依次调用的各个函数信息;
所述云真机执行其所解析到的测试信息生成所述应用程序的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述至少一个云真机中每个所述云真机确定与其硬件环境适配的测试文件,包括:
位于远端的至少一个云真机中每个所述云真机从预先设置的至少一个测试文件中确定与其硬件环境适配的测试文件,所述至少一个测试文件中不同的测试文件适配不同的硬件环境,所述至少一个云真机的硬件环境覆盖位于远端的所有云真机的硬件环境。
3.根据权利要求1所述的方法,其特征在于,所述云真机执行其所解析到的测试信息生成所述应用程序的测试结果,包括:
所述云真机确定其解析到的测试信息中当前未被调用且调用顺序最靠前的函数信息,所述函数信息携带函数名和参数信息;
所述云真机调用所述应用程序的第一动态库中当前所述函数信息携带的函数名对应的目标函数并利用当前所述函数信息携带的参数信息执行所述目标函数;所述第一动态库为所述应用程序加载的真实动态库;
所述云真机在执行完成所述目标函数后返回执行“所述云真机确定其解析到的测试信息中当前未被调用且调用顺序最靠前的函数信息”步骤。
4.一种云真机测试方法,其特征在于,包括:
确定待模拟的硬件环境所支持的能力;
基于所述待模拟的硬件环境所支持的能力本地模拟所述硬件环境;
接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,录制所述应用程序响应所述测试操作依次调用的各个函数信息生成适配于所述硬件环境的测试文件。
5.根据权利要求4所述的方法,其特征在于,所述确定待模拟的硬件环境所支持的能力,包括:
对位于远端的所有云真机按照所支持的能力进行分类,将支持相同能力的各个所述云真机确定为一组云真机;
分别将每组云真机所支持的能力确定为待模拟的硬件环境所支持的能力,所述能力为显卡能力。
6.根据权利要求5所述的方法,其特征在于,所述接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,录制所述应用程序响应所述测试操作依次调用的各个函数信息生成适配于所述硬件环境的测试文件,包括:
接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,在所述应用程序响应所述测试操作调用所述应用程序的第一动态库中的第一函数之前,调用第二动态库中与所述第一函数同名的第二函数;所述第二函数用于记录待生成的与所述硬件环境适配的测试文件中的函数信息,所述函数信息携带所述第一函数的函数名以及在调用所述第一函数时的参数信息;
在调用完成所述第二函数后返回调用所述第一函数;
其中,所述第一动态库为所述应用程序加载的真实动态库,所述第二动态库不同于所述第一动态库。
7.一种云真机测试装置,其特征在于,包括:
测试文件确定单元,用于确定与其硬件环境适配的测试文件;不同的硬件环境适配不同的测试文件,所述测试文件是由本地主机在模拟的与所述测试文件适配的硬件环境下对应用程序执行测试操作生成的;
测试信息解析单元,用于解析所述测试文件得到测试信息,所述测试信息指示所述应用程序响应所述测试操作依次调用的各个函数信息;
测试单元,用于执行所述测试信息生成所述应用程序的测试结果。
8.一种云真机测试装置,其特征在于,包括:
能力确定单元,用于确定待模拟的硬件环境所支持的能力;
硬件环境模拟单元,用于基于所述待模拟的硬件环境所支持的能力本地模拟所述硬件环境;
测试文件录制单元,用于接收对本地模拟的所述硬件环境下运行的应用程序执行的测试操作,录制所述应用程序响应所述测试操作依次调用的各个函数信息生成适配于所述硬件环境的测试文件。
9.一种终端,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-3任意一项所述的云真机测试方法或4-6任意一项所述的云真机测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1-3任意一项所述的云真机测试方法或4-6任意一项所述的云真机测试方法。
CN202010565156.XA 2020-06-19 2020-06-19 一种云真机测试方法、装置、终端及存储介质 Active CN111708704B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010565156.XA CN111708704B (zh) 2020-06-19 2020-06-19 一种云真机测试方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010565156.XA CN111708704B (zh) 2020-06-19 2020-06-19 一种云真机测试方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN111708704A true CN111708704A (zh) 2020-09-25
CN111708704B CN111708704B (zh) 2024-05-17

Family

ID=72541384

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010565156.XA Active CN111708704B (zh) 2020-06-19 2020-06-19 一种云真机测试方法、装置、终端及存储介质

Country Status (1)

Country Link
CN (1) CN111708704B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685310A (zh) * 2020-12-31 2021-04-20 杭州当虹科技股份有限公司 一种模拟测试云主机的方法
CN114884931A (zh) * 2022-04-27 2022-08-09 京东科技控股股份有限公司 一种测试系统及其搭建方法、装置、设备、介质

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659939A (ja) * 1992-08-10 1994-03-04 Fujitsu Ltd 並列計算機のシミュレーション方法
CN101021804A (zh) * 2007-03-13 2007-08-22 华为技术有限公司 调用动态库的方法、装置及动态库服务器
CN102012858A (zh) * 2010-06-29 2011-04-13 北京飞天诚信科技有限公司 一种模拟软件运行的方法
CN102141957A (zh) * 2010-10-21 2011-08-03 华为技术有限公司 一种远程真机的辅助测试方法、装置与系统
US20120124425A1 (en) * 2010-11-16 2012-05-17 International Business Machines Corporation Method and Apparatus Useful In Manufacturing Test Case Operations
US20120136838A1 (en) * 2010-11-30 2012-05-31 Moyer Jeffrey E Mechanism for performing automated data integrity verification testing for file systems
US20130173962A1 (en) * 2011-12-30 2013-07-04 Microsoft Corporation Test Execution Spanning Cloud and Local Devices
US20140215057A1 (en) * 2013-01-28 2014-07-31 Rackspace Us, Inc. Methods and Systems of Monitoring Failures in a Distributed Network System
CN104063305A (zh) * 2013-03-18 2014-09-24 腾讯科技(深圳)有限公司 智能终端软件的压力测试方法、装置和系统
WO2017049893A1 (zh) * 2015-09-22 2017-03-30 腾讯科技(深圳)有限公司 一种应用程序的测试方法、测试装置及移动终端
CN106844220A (zh) * 2017-03-09 2017-06-13 北京融信易安信息技术有限公司 一种模拟计算机网络应用程序真实运行环境的测试方法和系统
CN108427640A (zh) * 2018-01-25 2018-08-21 南京翼辉信息技术有限公司 一种在用户态下调试驱动程序的方法
CN108763086A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 基于远程真机的脚本录制方法、终端及计算机可读存储介质
CN110221983A (zh) * 2019-06-19 2019-09-10 深圳市腾讯网域计算机网络有限公司 测试方法、装置、计算机可读存储介质和计算机设备
CN110347577A (zh) * 2018-04-04 2019-10-18 阿里巴巴集团控股有限公司 一种页面测试方法、装置及其设备
CN110633210A (zh) * 2019-08-23 2019-12-31 北京三快在线科技有限公司 文件执行方法、装置、存储介质和电子设备
CN111176961A (zh) * 2019-12-05 2020-05-19 腾讯科技(深圳)有限公司 一种应用程序测试方法、装置及存储介质

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659939A (ja) * 1992-08-10 1994-03-04 Fujitsu Ltd 並列計算機のシミュレーション方法
CN101021804A (zh) * 2007-03-13 2007-08-22 华为技术有限公司 调用动态库的方法、装置及动态库服务器
CN102012858A (zh) * 2010-06-29 2011-04-13 北京飞天诚信科技有限公司 一种模拟软件运行的方法
CN102141957A (zh) * 2010-10-21 2011-08-03 华为技术有限公司 一种远程真机的辅助测试方法、装置与系统
US20120124425A1 (en) * 2010-11-16 2012-05-17 International Business Machines Corporation Method and Apparatus Useful In Manufacturing Test Case Operations
US20120136838A1 (en) * 2010-11-30 2012-05-31 Moyer Jeffrey E Mechanism for performing automated data integrity verification testing for file systems
US20130173962A1 (en) * 2011-12-30 2013-07-04 Microsoft Corporation Test Execution Spanning Cloud and Local Devices
US20140215057A1 (en) * 2013-01-28 2014-07-31 Rackspace Us, Inc. Methods and Systems of Monitoring Failures in a Distributed Network System
CN104063305A (zh) * 2013-03-18 2014-09-24 腾讯科技(深圳)有限公司 智能终端软件的压力测试方法、装置和系统
WO2017049893A1 (zh) * 2015-09-22 2017-03-30 腾讯科技(深圳)有限公司 一种应用程序的测试方法、测试装置及移动终端
CN106844220A (zh) * 2017-03-09 2017-06-13 北京融信易安信息技术有限公司 一种模拟计算机网络应用程序真实运行环境的测试方法和系统
CN108427640A (zh) * 2018-01-25 2018-08-21 南京翼辉信息技术有限公司 一种在用户态下调试驱动程序的方法
CN110347577A (zh) * 2018-04-04 2019-10-18 阿里巴巴集团控股有限公司 一种页面测试方法、装置及其设备
CN108763086A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 基于远程真机的脚本录制方法、终端及计算机可读存储介质
CN110221983A (zh) * 2019-06-19 2019-09-10 深圳市腾讯网域计算机网络有限公司 测试方法、装置、计算机可读存储介质和计算机设备
CN110633210A (zh) * 2019-08-23 2019-12-31 北京三快在线科技有限公司 文件执行方法、装置、存储介质和电子设备
CN111176961A (zh) * 2019-12-05 2020-05-19 腾讯科技(深圳)有限公司 一种应用程序测试方法、装置及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685310A (zh) * 2020-12-31 2021-04-20 杭州当虹科技股份有限公司 一种模拟测试云主机的方法
CN112685310B (zh) * 2020-12-31 2024-04-23 杭州当虹科技股份有限公司 一种模拟测试云主机的方法
CN114884931A (zh) * 2022-04-27 2022-08-09 京东科技控股股份有限公司 一种测试系统及其搭建方法、装置、设备、介质

Also Published As

Publication number Publication date
CN111708704B (zh) 2024-05-17

Similar Documents

Publication Publication Date Title
US8627296B1 (en) Unified unit and integration test with automatic mock creation
CN103810089A (zh) 自动测试基于姿态的应用
CN111143200A (zh) 触摸事件的录制及回放方法、装置、存储介质及设备
US10747656B2 (en) Systems and methods for mobile automation testing by emulating human behaviors
CN109815119B (zh) 一种app链接渠道的测试方法及装置
CN107608609B (zh) 一种事件对象发送方法与装置
CN111708704B (zh) 一种云真机测试方法、装置、终端及存储介质
CN113868126A (zh) 应用调试方法、装置、设备的存储介质
CN112416775B (zh) 基于人工智能的软件自动化测试方法、装置及电子设备
CN111813686A (zh) 一种游戏测试方法、装置、测试终端及存储介质
CN112436973B (zh) 一种用于云游戏的服务体验指标自动化测试方法与设备
CN115588458A (zh) 存储设备测试方法、系统、设备和可读存储介质
CN111367799A (zh) 定位源代码崩溃位置的方法、装置、介质及电子设备
CN105339974B (zh) 模拟传感器
US10445218B2 (en) Execution of graphic workloads on a simulated hardware environment
CN111258875A (zh) 界面测试方法及系统、电子设备、存储介质
CN110737900A (zh) 网页功能测试方法及装置、服务器和计算机可读存储介质
CN111897582B (zh) 一体机以太网刷新方法、装置、存储介质及一体机设备
CN116775202A (zh) 模糊测试方法、装置、介质、电子设备及计算机程序产品
CN111949510B (zh) 测试处理方法、装置、电子设备及可读存储介质
CN113268221A (zh) 文件匹配方法、装置、存储介质及计算机设备
CN112988304A (zh) 一种操作方式的记录方法、装置、电子设备和存储介质
CN112367295A (zh) 插件展示方法及装置、存储介质及电子设备
CN110569184A (zh) 一种测试方法及终端设备
CN112685306A (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
GR01 Patent grant
GR01 Patent grant