买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】应用测试方法、装置及终端_北京小米移动软件有限公司_201710595345.X 

申请/专利权人:北京小米移动软件有限公司

申请日:2017-07-20

公开(公告)日:2023-05-30

公开(公告)号:CN107423218B

主分类号:G06F11/36

分类号:G06F11/36;G06F9/455

优先权:

专利状态码:有效-授权

法律状态:2023.05.30#授权;2017.12.26#实质审查的生效;2017.12.01#公开

摘要:本公开是关于一种应用测试方法、装置及终端,其中,该方法包括:获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。

主权项:1.一种应用测试方法,其特征在于,包括:获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同;在所述虚拟终端安装应用时,对于系统级应用,所述虚拟终端将应用的代码注入到所述虚拟终端的系统层级,对于第三方应用,所述虚拟终端使用应用提供的安装包进行安装;在将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,还包括:获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用;所述虚拟终端用于对所述应用分别进行安装和测试;在所述获取终端的虚拟服务器中的应用之前,还包括:检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中;确定所述应用为待发布的应用之后,还包括:将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;或者,根据所述待发布的应用,生成空中下载技术OTA增量升级包;将所述OTA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述OTA增量升级包。

全文数据:应用测试方法、装置及终端技术领域[0001]本公开涉及终端技术领域,尤其涉及应用测试方法、装置及终端。背景技术[0002]随着终端技术的发展和普及,移动互联网正逐步成为互联网的重要组成部分。在移动互联网中,提供了移动端的应用超文本标记语言的第五次重大修改HTML5,简称H5页面,可以将H5页面应用到各应用程序中。因为需要将采用了H5页面的应用程序应用到移动终端中,而不同的移动终端具有不同的像素的屏幕、像素比等等终端配置属性;从而,在开发出H5页面之后,需要测试应用安装到不同类型的移动终端之后的效果。[0003]相关技术中,可以通过远程测试服务器上的接收文件接口,将应用代码实时推送远程测试服务器指定目录中;然后移动终端通过测试链接,去访问该远程测试服务器,移动终端获取该远程测试服务器中的应用,然后测试该应用的功能,显示该应用的页面效果。[0004]然而相关技术中,同一种应用需要在不同类型的移动终端上进行测试,进而针对同一种应用,需要适配出多种类型的实体移动终端,需要多台实体移动终端去获取应用之后,然后测试应用的功能是否正常。从而,需要耗费较多的测试成本。发明内容[0005]为克服相关技术中存在的需要多台实体移动终端去获取应用之后,然后测试应用的功能是否正常,需要耗费较多的测试成本的问题,本公开提供一种应用测试方法、装置及终端。[0006]根据本公开实施例的第一方面,提供一种应用测试方法,包括:[0007]获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;[0008]将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0009]进一步地,在将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,还包括:[0010]获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;[0011]在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。[0012]进一步地,在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用之后,还包括:[0013]将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;[0014]或者,[0015]根据所述待发布的应用,生成空中下载技术OvertheAirTechnology,简称OTA增量升级包;将所述〇TA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述0TA增量升级包。[0016]进一步地,在所述获取终端的虚拟服务器中的应用之前,还包括:[0017]构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。[0018]进一步地,在所述获取终端的虚拟服务器中的应用之前,还包括:[0019]对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。[0020]进一步地,在所述获取终端的虚拟服务器中的应用之前,还包括:[0021]检测所述应用的应用代码是否被更新;[0022]若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。[0023]本公开的实施例提供的技术方案可以包括以下有益效果:通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0024]根据本公开实施例的第二方面,提供一种应用测试装置,包括:[0025]获取模块,被配置为获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;[0026]发送模块,被配置为将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0027]进一步地,所述装置,还包括:[0028]确定模块,被配置为在所述发送模块将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。[0029]进一步地,所述装置,还包括:[0030]推送模块,被配置为在所述确定模块若确定一个所述测试结果表征要更改所述应用,贝!J更新所述应用并确定更新后的应用为待发布的应用,若确定所有所述测试结果表征不更改所述应用,则确定所述应用为待发布的应用之后,将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;或者,根据所述待发布的应用,生成OTA增量升级包,并将所述OTA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述OTA增量升级包。[0031]进一步地,所述装置,还包括:[0032]构建模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。[0033]进一步地,所述装置,还包括:[0034]编译模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。[0035]进一步地,所述装置,还包括:[0036]更新模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。[0037]本公开的实施例提供的技术方案可以包括以下有益效果:通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0038]根据本公开实施例的第三方面,提供一种终端,包括:[0039]处理器,以及用于存储处理器可执行指令的存储器;[0040]其中,所述处理器被配置为:获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0041]本公开的实施例提供的技术方案可以包括以下有益效果:通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0042]根据本公开实施例的第四方面,提供一种计算机程序,该程序在被处理器执行时用于执行以上第一方面的方法。[0043]根据本公开实施例的第五方面,提供一种程序产品,例如计算机可读存储介质,包括第四方面的程序。^[0044]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。1附图说明[0045]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。[0046]图1是根据一不例性实施例不出的一种应用测试方法实施例一的流程图;[0047]图2是根据一不例性实施例不出的一种应用测试方法实施例二的流程图;[0048]图3是根据一示例性实施例示出的一种应用测试装置实施例三的框图;’[0049]图4是根据一示例性实施例示出的一种应用测试装置实施例四的框图;[0050]图5是根据一示例性实施例示出的一种终端的实体的框图;[0051]图6是根据一示例性实施例示出的一种终端设备800的框图。具体实施方式[0052]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。[0053]图1是根据一示例性实施例示出的一种应用测试方法实施例一的流程图,如图1所示,应用测试方法用于终端中,该终端可以为个人终端、公共终端等等,该方法包括以下步骤。[0054]在步骤S11中,获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用。[0055]在本步骤中,在一台终端上设置了一个虚拟服务器;并且在一台终端上设置了至少一个虚拟终端,每一个虚拟终端的终端配置属性不同,其中,终端配置属性包括了屏幕宽高、分辨率、屏幕像素比,网络视图ffebView内核版本等等。[0056]虚拟终端可以指定WebView访问虚拟服务器的统一资源定位符(UniformResourceLocator,简称url、以及虚拟服务器中的应用等等。虚拟服务器与实体服务器设备的功能相同;虚拟终端与实体终端设备的功能相同,例如,虚拟终端可以采用Chrome开发者工具,对应用的页面进行debug调试。[0057]在终端的虚拟服务器对一个应用进行了调试、编译等等处理之后,获取该虚拟服务器中的应用。其中,应用中的页面为H5页面。[0058]举例来说,在终端的虚拟服务器中可以包括多个待测试的应用,例如应用A、应用B、应用C;可以获取虚拟服务器中的一个应用A。[0059]在步骤S12中,将所述应用发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0060]在本步骤中,终端将获取到的应用分别发送给终端中的每一个虚拟终端。然后,由每一个虚拟终端分别对该应用进行安装;在虚拟终端安装应用的时候,对于系统级应用,虚拟终端可以将应用的代码直接注入虚拟终端的系统层级,对于第三方应用,虚拟终端可以使用应用提供的安装包AndroidPackage,简称apk直接进行安装。然后每一个虚拟终端分别对该应用进行测试。由于终端中的每一虚拟终端的终端配置属性不同,每一个虚拟终端对同一应用在各自的配置环境中分别进行安装和测试。[0061]举例来说,终端中配置了3个虚拟终端,分别为虚拟终端1、虚拟终端2、虚拟终端3;这3个虚拟终端各自的终端配置属性是不同的,例如,虚拟终端1的分辨率为al、屏幕像素比bl,虚拟终端2的分辨率为a2、屏幕像素比b2,虚拟终端3的分辨率为a3、屏幕像素比b3;终端将虚拟服务器中的同一个应用,分别发送给这3个虚拟终端;然后,虚拟终端1、虚拟终端2、虚拟终端3分别安装该应用并测试该应用的各功能。[0062]本实施例通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0063]图2是根据一示例性实施例示出的一种应用测试方法实施例二的流程图,如图2所示,应用测试方法用于终端中,该方法包括以下步骤。[0064]在步骤S21中,构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。[0065]在本步骤中,根据测试应用的需求,在终端中构建出多个虚拟终端,不同的虚拟终端具有不同的终端配置属性。具体来说,可以根据实际需求,根据现有的实体终端的终端配置属性,在终端中构建出虚拟终端,虚拟终端的终端配置属性与现有的实体终端的终端配置属性相同;也可以对现有的多种实体终端中,屏幕宽高、分辨率、屏幕像素比,WebView内核版本等终端配置属性进行任意的组合,得到调整后的终端配置属性,构建出虚拟终端的终端配置属性与调整后的终端配置属性相同。[0066]其中,终端配置属性包括了屏幕宽高、分辨率、屏幕像素比,WebView内核版本等等。[0067]例如,构建出虚拟终端1,虚拟终端1的屏幕宽高、分辨率、屏幕像素比等等,与现有的实体终端1的屏幕宽高、分辨率、屏幕像素比等等相同;或者,将现有的实体终端1的屏幕宽高、现有的实体终端2的分辨率、现有的实体终端3的屏幕像素比进行组合,得到调整后的终端配置属性,根据该调整后的终端配置属性构建出虚拟终纟而1。[0068]在步骤S22中,获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用。[0069]在本步骤中,本步骤可以参见图1的步骤SI1,不再赘述。[0070]在步骤S23中,将所述应用发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0071]在本步骤中,本步骤可以参见图1的步骤S12,不再赘述。[0072]在步骤S24中,获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。[0073]在本步骤中,在终端中的每一个虚拟终端安装并测试应用之后,每一个虚拟终端可以生成一个测试结果。终端获取各虚拟终端生成的测试结果,确定各测试结果是否表征需要更改当前的应用;终端只要确定有一个测试结果表征需要更改当前的应用,则终端需要对该应用进行更新,然后终端将更新后的应用作为待发布的应用;终端若确定所有的测试结果都表征不需要更改应用,那么终端就可以确定该应用为待发布的应用。[0074]在步骤S25中,将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用。或者,根据所述待发布的应用,生成0TA增量升级包;将所述0TA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述0TA增量升级包。[0075]在本步骤中,终端在虚拟终端上完成应用的测试和调试之后,通过同步策略将应用推入到其他实体终端中。同步策略包括了刷新同步方式和0TA同步方式。[0076]对于刷新同步方式。终端采用打包部署工具将待发布的应用推送至远程服务器。然后,其他实体终端可以访问该远程服务器上的资源,进而获取到该应用,然后其他实体终端进行刷新应用的页面,从对应用的页面进行修改。[0077]对于0TA同步方式。如果只是对应用的页面进行了测试,应用的页面以静态资源方式存储在终端上,终端可以根据待发布的应用的页面,生成0TA增量升级包,然后终端将0TA增量升级包发送给远程服务器或者指定平台。然后,其他实体终端可以去远程服务器或者指定平台上获取该0TA增量升级包,其他实体终端通过安装该0TA增量升级包对应用的页面进行更新。[0078]本实施例通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。并且,提供对于刷新同步方式和0TA同步方式,为其他实体终端提供待发布的应用。[0079]在上述实施例二的基础上,本实施例二提供的方法,在步骤S22之前,还可以包括以下步骤中至少一个:[0080]在步骤S26中,对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。[0081]在本步骤中,终端可以采用打包部署工具对应用的应用代码进行打包,然后对打包之后的应用代码进行编译处理;然后终端开启终端的虚拟服务器,终端将前端的应用代码,推送至虚拟服务器的指定端口。进而终端将应用代码发送给终端的虚拟服务器。[0082]在步骤S27中,检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。[0083]在本步骤中,终端可以检测应用的应用代码是否被更新。具体来说,终端的打包部署工具包含热更新机制;一旦前端的应用代码被更新,终端的打包部署工具可以获取到更新后的应用代码,并且将更新后的应用代码推送到终端的虚拟服务器的指定端口。[0084]图3是根据一示例性实施例示出的一种应用测试装置实施例三的框图。参照图3,该装置包括:[0085]获取模块31,被配置为获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;[0086]发送模块32,被配置为将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0087]关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。[0088]本实施例通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0089]在上述实施例三的基础上,图4是根据一示例性实施例示出的一种应用测试装置实施例四的框图。参照图4,该装置,还包括:[0090]构建模块41,被配置为在所述获取模块31获取终端的虚拟服务器中的应用之前,构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。[0091]本实施例提供的装置,还包括:[0092]确定模块42,被配置为在所述发送模块32将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。[0093]推送模块43,被配置为在所述确定模块42若确定一个所述测试结果表征要更改所述应用,则更新所述应用并确定更新后的应用为待发布的应用,若确定所有所述测试结果表征不更改所述应用,则确定所述应用为待发布的应用之后,将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;或者,根据所述待发布的应用,生成OTA增量升级包,并将所述0TA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述0TA增量升级包。[0094]本实施例提供的装置,还包括以下模块的至少一个:[0095]编译模块,被配置为在所述获取模块31获取终端的虚拟服务器中的应用之前,对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。[0096]更新模块,被配置为在所述获取模块31获取终端的虚拟服务器中的应用之前,检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。[0097]关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。[0098]本实施例通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用•,其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。并且,提供对于刷新同步方式和〇TA同步方式,为其他实体终端提供待发布的应用。[0099]图5是根据一示例性实施例示出的一种终端的实体的框图。参照图5,该终端可以具体实现为:处理器51,以及被配置为存储处理器可执行指令的存储器52;[0100]其中,所述处理器51被配置为:获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0101]在上述实施例中,应理解,该处理器可以是中央处理单元(英文:CentralProcessingUnit,简称:CPU,还可以是其他通用处理器、数字信号处理器英文:DigitalSignalProcessor,简称:DSP、专用集成电路(英文ApplicationSpecificIntegratedCircuit,简称:ASIC等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器英文:read-〇nlymemory,缩写:ROM、随机存取存储器英文:randomaccessmemory,简称:RAM、快闪存储器、硬盘或者固态硬盘。SIM卡也称为用户身份识别卡、智能卡,数字移动电话机必须装上此卡方能使用。即在电脑芯片上存储了数字移动电话客户的信息,加密的密钥以及用户的电话簿等内容。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。[0102]关于上述实施例中的终端,其中各个模块执行操作的具体方式已经在有关该方法和装置的实施例中进行了详细描述,此处将不做详细阐述说明。[0103]本实施例通过获取终端的虚拟服务器中的应用,应用为虚拟服务器处理之后的应用;将应用分别发送给终端中的各虚拟终端,以使每一个虚拟终端安装并测试应用;其中,虚拟终端位于终端中,不同的虚拟终端的终端配置属性不同。可以在一台终端设备中模拟出一个虚拟服务器、以及多个虚拟终端,每个虚拟终端的终端配置属性各不相同;可以将虚拟服务器中的应用,发送给多个虚拟终端,由多个虚拟终端分别对该应用在各自的配置环境中进行测试。在一台实体的终端设备下模拟出不同的终端类型,不再需要适配出多种类型的实体终端,去测试应用的功能,可以降低测试成本;并且,在终端上的虚拟终端中对应用的功能和页面进行测试之后,再将测试后的应用发送给远程服务器,进而不需要不断的向远程服务器发送应用的代码,可以提高开发效率。[0104]图6是根据一示例性实施例示出的一种终端设备800的框图。例如,终端设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。[0105]参照图6,终端设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入输出(IO的接口812,传感器组件814,以及通信组件816。[0106]处理组件802通常控制终端设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。[0107]存储器804被配置为存储各种类型的数据以支持在终端设备800的操作。这些数据的示例包括用于在终端设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器SRAM,电可擦除可编程只读存储器EEPROM,可擦除可编程只读存储器EPROM,可编程只读存储器PROM,只读存储器ROM,磁存储器,快闪存储器,磁盘或光盘。[0108]电源组件806为终端设备800的各种组件提供电力。电源组件8〇6可以包括电源管理系统,一个或多个电源,及其他与为终端设备800生成、管理和分配电力相关联的组件。[0109]多媒体组件808包括在所述终端设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器LCD和触摸面板TP。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和或后置摄像头。当终端设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。[0110]音频组件810被配置为输出和或输入音频信号。例如,音频组件810包括一个麦克风MIC,当终端设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。[0111]IO接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。[0112]传感器组件814包括一个或多个传感器,用于为终端设备800提供各个方面的状态评估。例如,传感器组件814可以检测到终端设备800的打开关闭状态,组件的相对定位,例如所述组件为终端设备800的显示器和小键盘,传感器组件814还可以检测终端设备800或终端设备800—个组件的位置改变,用户与终端设备800接触的存在或不存在,终端设备800方位或加速减速和终端设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或XD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。通信组件816被配置为便于终端设备800和其他设备之间有线或无线方式的通信。终端设备800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件8ie经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信NFC模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID技术,红外数据协会(IrDA技术,超宽带UWB技术,蓝牙BT技术和其他技术来实现。[0114]在示例性实施例中,终端设备800可以被一个或多个应用专用集成电路ASIC、数字信号处理器DSP、数字信号处理设备DSPD、可编程逻辑器件PLD、现场可编程门阵列FPGA、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。[0115]在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由终端设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是R0M、随机存取存储器RAM、CD-R0M、磁带、软盘和光数据存储设备等。[^16]—种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种应用测试方法,所述方法包括:[0117]获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;[0118]将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。[0119]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识4丨火,入丨、伐。阢叨卡和买施例仅被视为不例性的,本发明的真正围和精神由下面的权利要求指出。'[0120]应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

权利要求:1.一种应用测试方法,其特征在于,包括:获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。2.根据权利要求1所述的方法,其特征在于,在将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,还包括:获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。3.根据权利要求2所述的方法,其特征在于,在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用之后,还包括:将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;或者,根据所述待发布的应用,生成空中下载技术OTA增量升级包;将所述OTA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述OTA增量升级包。4.根据权利要求1或2所述的方法,其特征在于,在所述获取终端的虚拟服务器中的应用之前,还包括:构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。5.根据权利要求1或2所述的方法,其特征在于,在所述获取终端的虚拟服务器中的应用之前,还包括:对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。6.根据权利要求1或2所述的方法,其特征在于,在所述获取终端的虚拟服务器中的应用之前,还包括:检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。7.—种应用测试装置,其特征在于,包括:获取模块,被配置为获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;发送模块,被配置为将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。8.根据权利要求7所述的装置,其特征在于,所述装置,还包括:确定模块,被配置为在所述发送模块将所述应用分别发送给所述终端中的各虚拟终端,以使每一个虚拟终端安装并测试所述应用之后,获取每一个所述虚拟终端中的测试结果,所述测试结果为所述虚拟终端对所述应用测试之后生成的;在一个所述测试结果表征要更改所述应用时,更新所述应用,并确定更新后的应用为待发布的应用;在所有所述测试结果表征不更改所述应用时,确定所述应用为待发布的应用。9.根据权利要求8所述的装置,其特征在于,所述装置,还包括:推送模块,被配置为在所述确定模块若确定一个所述测试结果表征要更改所述应用,则更新所述应用并确定更新后的应用为待发布的应用,若确定所有所述测试结果表征不更改所述应用,则确定所述应用为待发布的应用之后,将所述待发布的应用,推送至远程服务器,以使其他终端从所述远程服务器中获取所述待发布的应用;或者,根据所述待发布的应用,生成OTA增量升级包,并将所述OTA增量升级包发送给所述远程服务器,以使其他终端从所述远程服务器中获取所述OTA增量升级包。10.根据权利要求7或8所述的装置,其特征在于,所述装置,还包括:构建模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,构建至少一种虚拟终端,其中,所述虚拟终端具有所述终端配置属性。11.根据权利要求7或8所述的装置,其特征在于,所述装置,还包括:编译模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,对应用代码进行编译处理,并将编译处理后的应用代码推送至所述虚拟服务器中。12.根据权利要求7或8所述的装置,其特征在于,所述装置,还包括:更新模块,被配置为在所述获取模块获取终端的虚拟服务器中的应用之前,检测所述应用的应用代码是否被更新;若确定被更新,则获取更新后的应用代码,并将所述更新后的应用代码推送至所述虚拟服务器中。13.—种终端,其特征在于,包括:处理器,以及用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取终端的虚拟服务器中的应用,所述应用为所述虚拟服务器处理之后的应用;将所述应用分别发送给所述终端中的各虚拟终端,以使每一个所述虚拟终端安装并测试所述应用;其中,所述虚拟终端位于所述终端中,不同的所述虚拟终端的终端配置属性不同。14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6任一项所述方法的步骤。

百度查询: 北京小米移动软件有限公司 应用测试方法、装置及终端

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。