书签 分享 收藏 举报 版权申诉 / 16

应用的云测试方法、系统、客户端及服务器.pdf

  • 上传人:r5
  • 文档编号:4816895
  • 上传时间:2018-11-14
  • 格式:PDF
  • 页数:16
  • 大小:3.01MB
  • 摘要
    申请专利号:

    CN201310073196.2

    申请日:

    2013.03.07

    公开号:

    CN104038381A

    公开日:

    2014.09.10

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):H04L 12/26申请日:20130307|||公开

    IPC分类号:

    H04L12/26

    主分类号:

    H04L12/26

    申请人:

    腾讯科技(深圳)有限公司

    发明人:

    徐铮

    地址:

    518044 广东省深圳市福田区振兴路赛格科技园2栋东403室

    优先权:

    专利代理机构:

    上海波拓知识产权代理有限公司 31264

    代理人:

    杨波

    PDF完整版下载: PDF下载
    内容摘要

    本发明涉及应用的云测试方法、系统、客户端及服务器,其中应用的云测试方法包括:获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若是,则接收服务器发送的携带有待执行测试任务的心跳包回执,并将测试任务发送给所获取的移动终端,以控制此移动终端根据测试任务对待测应用进行测试;以及接收此移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。本发明能够提高应用的测试效率、降低测试成本。

    权利要求书

    权利要求书1.  一种应用的云测试方法,其特征是:包括步骤:获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;每隔一段时间向该服务器发送携带至少一移动终端的相关信息的心跳包,并由该服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则接收该服务器发送的携带有待执行测试任务的心跳包回执,并将该测试任务发送给所获取的移动终端,以控制所获取的移动终端根据该测试任务对该待测应用进行测试;以及接收所获取的移动终端实时发送的测试过程中的测试信息,并将该测试信息实时发送给该服务器进行显示。2.  根据权利要求1所述的应用的云测试方法,其特征是:该相关信息包括移动终端的品牌、型号、处于空闲状态或处于正在测试应用的状态,对该待测应用进行测试包括对该待测应用进行安装、运行、卸载测试,该测试信息为该待测应用在测试过程中的屏幕截图、测试数据、测试进度信息。3.  根据权利要求1所述的应用的云测试方法,其特征是:在执行每隔一段时间向该服务器发送携带至少一移动终端的相关信息的心跳包的步骤中,还包括步骤:每隔一段时间获取该至少一移动终端的相关信息。4.  一种客户端,其特征在于,其包括:信息发送模块,用于获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;心跳包发送模块,用于每隔一段时间向该服务器发送携带至少一移动终端的相关信息的心跳包,并由该服务器根据心跳包判断所获取的移动终端是否处于空闲状态;测试模块,用于若处于空闲状态,则接收该服务器发送的携带有待执行测试任务的心跳包回执,并将该测试任务发送给所获取的移动终端,以控制所获取的移动终端根据该测试任务对该待测应用进行测试;以及测试信息接收模块,用于接收所获取的移动终端实时发送的测试过程中的测试信息,并将该测试信息实时发送给该服务器进行显示。5.  根据权利要求4所述的客户端,其特征在于,该相关信息包括移动终端的品牌、型号、处于空闲状态或处于正在测试应用的状态,对该待测应用进行测试包括对该待测应用进行安装、运行、卸载测试,该测试信息为该待测应用在测试过程中的屏幕截图、测试数据、测试进度信息。6.  根据权利要求4所述的客户端,其特征在于,该心跳包发送模块,还用于每隔一段时间获取该至少一移动终端的相关信息。7.  一种应用的云测试方法,其特征是:包括步骤:接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;接收并存储该至少一客户端发送的携带有移动终端的相关信息的心跳包,根据该些心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使该客户端控制所获取的移动终端执行该测试任务,以对该待测应用进行测试;以及接收并显示该客户端发送的测试过程中的测试信息。8.  根据权利要求7所述的应用的云测试方法,其特征在于,在执行接收并存储该至少一客户端发送的携带有移动终端的相关信息的心跳包的步骤中,还包括步骤:将移动终端的相关信息进行显示,移动终端的相关信息包括移动终端的品牌、型号、移动终端处于空闲状态或处于正在测试应用的状态。9.  根据权利要求7所述的应用的云测试方法,其特征在于,在执行接收并存储该至少一客户端发送的携带有移动终端的相关信息的心跳包的步骤前,还包括步骤:设定一预设时间,并判断在该预设时间内是否接收到该些客户端发送的心跳包;若在该预设时间内接收到该些客户端发送的心跳包,则接收并存储该些客户端发送的携带有移动终端的相关信息的心跳包。10.  根据权利要求7所述的应用的云测试方法,其特征在于,对待测应用进行测试包括对待测应用进行安装、运行、卸载测试,该测试信息为该待测应用在测试过程中的屏幕截图、测试数据、测试进度信息。11.  根据权利要求7所述的应用的云测试方法,其特征在于,在执行接收并显示该客户端发送的测试过程中的测试信息的步骤中,还包括步骤:将所有测试信息进行汇总处理;将测试过程中出现的测试问题记录在日志中以供用户下载该日志;以及将测试信息和汇总处理后的测试信息进行存储。12.  一种服务器,其特征在于,其包括:信息接收模块,用于接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;心跳包接收模块,用于接收并存储该至少一客户端发送的携带有移动终端的相关信息的心跳包,根据该些心跳包判断所获取的移动终端是否处于空闲状态;控制模块,用于若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使该客户端控制所获取的移动终端执行该测试任务,以对该待测应用进行测试;以及测试信息接收模块,用于接收并显示该客户端发送的测试过程中的测试信息。13.  根据权利要求12所述的服务器,其特征在于,该心跳包接收模块,还用于将移动终端的相关信息进行显示,移动终端的相关信息包括移动终端的品牌、型号、移动终端处于空闲状态或处于正在测试应用的状态。14.  根据权利要求12所述的服务器,其特征在于,该心跳包接收模块,还用于设定一预设时间,并判断在该预设时间内是否接收到该些客户端发送的心跳包,若在该预设时间内接收到该些客户端发送的心跳包,则接收并存储该些客户端发送的携带有移动终端的相关信息的心跳包。15.  根据权利要求12所述的服务器,其特征在于,对待测应用进行测试包括对待测应用进行安装、运行、卸载测试,该测试信息为该待测应用在测试过程中的屏幕截图、测试数据、测试进度信息。16.  根据权利要求12所述的服务器,其特征在于,该测试信息接收模块,还用于将所有测试信息进行汇总处理,将测试过程中出现的测试问题记录在日志中以供用户下载该日志;将测试信息和汇总处理后的测试信息进行存储。17.  一种应用的云测试系统,包括:服务器及至少一客户端;该服务器包括信息接收模块、心跳包接收模块、控制模块以及测试信息处理模块;每一客户端包括信息发送模块、心跳包发送模块、测试模块以及测试信息接收模块;每一信息发送模块,用于获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;信息接收模块,用于接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的多个待执行测试任务;每一心跳包发送模块,每隔一段时间向该服务器发送携带至少一移动终端的相关信息的心跳包;心跳包接收模块,用于接收并存储这些心跳包,根据该些心跳包判断所获取的移动终端是否处于空闲状态;控制模块,用于若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的这些移动终端相连的客户端;每一测试模块,用于接收该心跳包回执,并将该测试任务发送给所获取的移动终端,以控制所获取的移动终端根据该测试任务对该待测应用进行测试;每一测试信息接收模块,用于接收该移动终端实时发送的测试过程中的测试信息,并将这些测试信息实时发送给该服务器;测试信息处理模块,用于接收并显示该客户端发送的测试过程中的该些测试信息。18.  如权利要求17所述的应用的云测试系统,其特征在于,该测试信息处理模块,还用于将所有测试信息进行汇总处理,将测试过程中出现的测试问题记录在日志中以供用户下载该日志;将测试信息和汇总处理后的测试信息进行存储。

    说明书

    说明书应用的云测试方法、系统、客户端及服务器
    技术领域
    本发明涉及应用测试技术领域,尤其涉及应用的云测试方法、应用的云测试系统、客户端及服务器。
    背景技术
    目前,移动装置,例如手机、mp3,的品牌和型号多种多样,随之也开发出了适于在移动装置上运行的各种应用,例如基于在安卓系统上运行的应用等。这些应用不同于一般的计算机应用,它是一种开发编译环境和运行环境分离的基于嵌入式系统的应用,其通常在一台移动装置上进行开发的,而如果在其它移动装置上运行有问题,例如显示或安装有问题,将会直接影响到用户是否正常使用。因此需要研究一种应用的测试方法以测试应用是否适于在各种移动装置上正常运行。
    由于在移动装置上运行的应用不是在计算机上运行,因此不能像测试计算机应用那样通过直接在计算机上运行的方式进行应用的测试工作。目前已有移动装置的应用测试方法多依赖于人工测试,即使用不同的移动装置来进行人工测试,并和正确的测试内容进行比对。目前移动装置的品牌和型号太多,导致适配测试工作太繁琐。人工测试方法太耗时间,效率低下,很难满足当前移动装置研发要求高、周期短的要求。并且测试完全依靠人的主观判断,长时间重复劳动会影响应用测试的稳定性。因此,业界许多移动装置生产商都迫切希望能够找到一种高效的应用测试方法,以提高应用的测试效率、降低测试成本、缩短产品研发周期。
    发明内容
    因此,本发明提供应用的云测试方法、应用的云测试系统、客户端及服务器,能够提高应用的测试效率、降低测试成本。
    具体地,本发明实施例提出的一种应用的云测试方法,包括步骤:获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则接收服务器发送的携带有待执行测试任务的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试;以及接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。
    另外,本发明实施例提出的一种客户端,包括信息发送模块、心跳包发送模块、测试模块以及测试信息接收模块,信息发送模块,用于获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息;心跳包发送模块,用于每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;测试模块,用于若处于空闲状态,则接收服务器发送的携带有待执行测试任务的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试;测试信息接收模块,用于接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。
    此外,本发明实施例提出的一种应用的云测试方法,包括步骤:接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据这些心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则将携带有 待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使客户端控制所获取的移动终端执行测试任务,以对待测应用进行测试;以及接收并显示客户端发送的测试过程中的测试信息。
    再者,本发明实施例提出的一种服务器,包括信息接收模块、心跳包接收模块、控制模块以及测试信息接收模块,信息接收模块,用于接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;心跳包接收模块,用于接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据这些心跳包判断所获取的移动终端是否处于空闲状态;控制模块,用于若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使客户端控制所获取的移动终端执行测试任务,以对待测应用进行测试;测试信息接收模块,用于接收并显示客户端发送的测试过程中的测试信息。
    再者,本发明实施例提出的一种应用的云测试系统,包括上述客户端和服务器。
    由上述实施例可知,本发明通过向服务器发送获取的待测应用信息及移动终端信息;并每隔一段时间向服务器发送携带各个移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则接收服务器发送的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试;再接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
    附图说明
    图1是本发明实施例提出的应用的云测试方法的步骤流程图;
    图2是本发明实施例提出的客户端的主要架构框图;
    图3是本发明另一实施例提出的应用的云测试方法的步骤流程图;
    图4是本发明实施例提出的服务器的主要架构框图;
    图5是本发明实施例提出的应用的云测试系统的主要架构框图。
    具体实施方式
    为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的应用的云测试方法、应用的云测试系统、客户端及服务器其具体实施方式、结构、特征及功效,详细说明如后。
    有关本发明的前述及其他技术内容、特点及功效,在以下配合参考图式的较佳实施例详细说明中将可清楚的呈现。通过具体实施方式的说明,当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图式仅是提供参考与说明之用,并非用来对本发明加以限制。
    图1是本发明实施例提出的应用的云测试方法的步骤流程图。请参阅图1,本发明实施例的应用的云测试方法可包括以下步骤S101-S107:
    步骤S101:获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息。
    本步骤中,客户端可以获取待测应用信息和对待测应用进行测试的移动终端信息。移动终端可以为手机等设备。客户端与多个移动终端之间可 以以无线或有线方式进行连接。待测应用可以为基于在安卓系统上运行的应用等。
    客户端用户可以通过服务器提供的网站进行注册,经过注册的合法客户端用户可以向服务器提供的网站发送获取的待测应用信息、对待测应用进行测试的移动终端信息等。移动终端信息,例如可以包括移动终端型号、移动终端的品牌、启动测试等信息。
    步骤S103:每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态。
    本步骤中,移动终端的相关信息包括移动终端的品牌、型号、状态等。状态包括处于空闲状态、处于正在测试某个应用的状态等。优选地,步骤S103中还可包括:可以每隔一段时间获取此至少一移动终端的相关信息,以根据此相关信息向服务器发送携带至少一移动终端的相关信息的心跳包。客户端获取移动终端的相关信息的间隔及向服务器发送心跳包的间隔时间均可以根据实际需要而预先进行设定。客户端可以建立一个主线程专门负责向服务器发送心跳包。
    步骤S105:若处于空闲状态,则接收服务器发送的携带有待执行测试任务的心跳包回执,并将待执行测试任务发送给所获取的移动终端,以控制所获取的移动终端根据此测试任务对待测应用进行测试。
    本步骤中,举例说明,若步骤S101中向服务器发送待测应用信息和对待测应用进行测试的移动终端信息的客户端为A客户端,而所获取的进行测试的移动终端连接在B客户端上,则本步骤中B客户端就可以接收到服务器发送的携带有待执行测试任务的心跳包回执。若步骤S101中向服务器发送待测应用信息和对待测应用进行测试的移动终端信息的客户端为A客户端,而所获取的进行测试的移动终端也连接在A客户端上,则本步骤中 A客户端就可以接收到服务器发送的携带有待执行测试任务的心跳包回执。
    客户端可以建立单独的子线程将待执行测试任务发送给连接在其上的移动终端。而心跳包是由主线程发送的,并且主线程和子线程可以同步执行。对待测应用进行测试包括对待测应用进行安装、运行(即测试待测应用执行过程中屏幕显示的所有控件)、卸载等测试。
    步骤S107:接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。
    本步骤中,测试信息为待测应用正在测试或待测应用完成测试的信息,包括待测应用测试过程中的屏幕截图、测试数据、测试进度等。从屏幕截图中不仅可以看出待测应用测试过程中是否出现异常,还可以得出移动终端分辨率是否存在问题。
    服务器接收到测试信息后,还可以对测试信息进行相应处理。对测试信息处理包括将所有测试信息进行汇总处理,例如将所有移动终端对同一个待测应用的测试信息进行合并处理,如果某些待测应用在某些移动终端上进行测试的过程中出现测试崩溃、无响应、异常退出、安装出错、无法卸载等测试问题,则对测试信息处理还包括将测试过程中出现的测试问题记录在日志中以供用户下载此日志。
    在本发明实施例中,本发明通过向服务器发送获取的待测应用信息及移动终端信息;并每隔一段时间向服务器发送携带各个移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则接收服务器发送的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试;再接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容 易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    还能够对待测应用完成屏幕显示的所有控件的遍历测试操作,测试比较全面。如果出现测试崩溃、无响应等测试问题时都可以方便地捕获到并给出移动终端对待测应用测试的日志信息,如果是移动终端分辨率引起的问题,也可以很方便地通过测试信息中的屏幕截图来捕获,从而提高了测试过程的响应速度。
    图2是本发明实施例提出的客户端的主要架构框图。请参阅图2,客户端包括:信息发送模块201、心跳包发送模块203、测试模块205以及测试信息接收模块207。
    信息发送模块201,用于获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息。
    心跳包发送模块203,用于每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态。相关信息包括移动终端的品牌、型号、处于空闲状态或处于正在测试应用的状态等。
    此外,心跳包发送模块203,还用于每隔一段时间获取此至少一移动终端的相关信息。
    测试模块205,用于若处于空闲状态,则接收服务器发送的携带有待执行测试任务的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试。其中,对待测应用进行测试包括对待测应用进行安装、运行、卸载等测试。
    测试信息接收模块207,用于接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。其中,测试信息为待测应用在测试过程中的屏幕截图、测试数据、测试进度等信息。
    在本发明的实施例中,本发明通过向服务器发送获取的待测应用信息及移动终端信息;并每隔一段时间向服务器发送携带各个移动终端的相关信息的心跳包,并由服务器根据心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则接收服务器发送的心跳包回执,并将测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试;再接收所获取的移动终端实时发送的测试过程中的测试信息,并将测试信息实时发送给服务器进行显示。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    还能够对待测应用完成屏幕显示的所有控件的遍历测试操作,测试比较全面。如果出现测试崩溃、无响应等测试问题时都可以方便地捕获到并给出移动终端对待测应用测试的日志信息,如果是移动终端分辨率引起的问题,也可以很方便地通过测试信息中的屏幕截图来捕获,从而提高了测试过程的响应速度。
    图3是本发明另一实施例提出的应用的云测试方法的步骤流程图。请参阅图3,本发明实施例的应用的云测试方法可包括以下步骤S301-S307:
    步骤S301:接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务,测试任务为所获取的移动终端对待测应用进行测试。
    本步骤中,移动终端可以为手机等设备。每一客户端可以以无线或有线方式连接多个移动终端。客户端用户可以通过服务器提供的网站进行注册,经过注册的合法客户端用户可以向服务器提供的网站发送获取的待测应用信息、对待测应用进行测试的移动终端信息等。移动终端信息,例如可以包括移动终端型号、移动终端的品牌、启动测试等信息。服务器提供 给客户端进行选择的待测信息可以为:展示所有可选的移动终端以供用户选择,展示所有可选的待测应用或供用户选择本地待测应用并上传,展示用户提交的待测应用的信息:待测应用的名称、版本等,展示待测应用在每个移动终端上的测试运行状态:待测试、正在测试、完成测试等状态。
    服务器可以将接收的待测应用信息、对待测应用进行测试的移动终端信息及待执行测试任务存入数据库中。
    服务器接收到用户上传的待测应用后,分析用户上传的待测应用,可以提取出待测应用的相关信息,例如待测应用的名称、版本号等。
    服务器可以将一个待测应用在一个移动终端上进行一次测试定义为一个测试任务,由此可以根据客户端用户上传的多个待测应用及选择的多个移动终端生成多个测试任务。举例说明,若用户选择3个移动终端对一个待测应用进行测试,则就会生成3个待执行测试任务。
    步骤S303:接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据此些心跳包判断所获取的移动终端是否处于空闲状态,如果处于空闲状态,则进行步骤S305。
    本步骤中,可以采用服务器接收并存储客户端发送的心跳包。移动终端的相关信息包括移动终端的品牌、型号、移动终端处于空闲状态、正在测试某个应用的状态等相关信息。此外,接收到心跳包后,则可以将移动终端相关信息存储到数据库中。
    步骤S303中具体还可包括步骤:将移动终端的相关信息进行显示,例如显示在服务器提供的Web页面中。
    步骤S303前具体还可包括步骤:
    判断是否接收到客户端发送的心跳包,若接收到,则进行步骤S303,若未接收到,则结束。
    本步骤中,服务器可以设定一预设时间,并判断在此预设时间内是否 接收到客户端发送的心跳包,若在此预设时间内接收到客户端发送的心跳包,则表示服务器与客户端之间处于连接状态,并执行步骤S303。反之,则表示服务器与客户端之间断开,可能由于网络原因或其它原因,服务器与客户端之间会断开。此外,服务器还可存储客户端的状态,例如客户端与服务器处于连接或断开的状态。
    步骤S305:将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使此客户端控制所获取的移动终端执行此测试任务,以对待测应用进行测试。
    本步骤中,举例说明,若步骤S301中向服务器发送获取的待测应用信息及移动终端信息的客户端为A客户端,而所获取的进行测试的两个移动终端分别连接在B客户端和C客户端上,则本步骤中将携带有待执行测试任务的心跳包回执分别发送给B和C客户端。若步骤S301中向服务器发送获取的待测应用信息及移动终端信息的客户端为A客户端,而所获取的进行测试的三个移动终端均连接在A客户端上,则本步骤中将携带有待执行测试任务的心跳包回执发送给A客户端。
    客户端可以建立单独的子线程将待执行测试任务发送给所获取的移动终端。而心跳包是由主线程发送的,并且主线程和子线程可以同步执行。对待测应用进行测试包括对待测应用进行安装、运行(即测试待测应用执行过程中屏幕显示的所有控件)、卸载等测试。
    步骤S307:接收并显示此客户端发送的测试过程中的测试信息,此测试信息是由所获取的移动终端实时发送的。
    本步骤中,举例说明,若步骤S301中向服务器发送获取的待测应用信息及移动终端信息的客户端为A客户端,而所获取的进行测试的两个移动终端分别连接在B客户端和C客户端上,则本步骤中服务器接收B和C客户端发送的对待测应用进行测试过程中的测试信息,并将测试信息发送给A 客户端以供用户查看。若步骤S301中向服务器发送获取的待测应用信息及移动终端信息的客户端为A客户端,而所获取的进行测试的三个移动终端均连接在A客户端上,则本步骤中服务器接收A客户端发送的对待测应用进行测试过程中的测试信息,并将测试信息重新发送给A客户端以供用户查看。
    测试信息为待测应用正在测试或待测应用完成测试的信息,包括待测应用测试过程中的屏幕截图、测试数据、测试进度等。从屏幕截图中不仅可以看出待测应用测试过程中是否出现异常,还可以得出移动终端分辨率是否存在问题。
    服务器接收到测试信息后,还可以对测试信息进行相应处理。对测试信息处理包括将所有测试信息进行汇总处理,例如将所有移动终端对同一个待测应用的测试信息进行合并处理。举例说明,若某个待测应用在5个不同型号的移动终端上进行测试,则可以将5个移动终端的测试信息进行合并处理以得出是否全部通过测试的测试结果等。
    如果某些待测应用在某些移动终端上进行测试的过程中出现测试崩溃、无响应、异常退出、安装出错、无法卸载等测试问题,则对测试信息处理还包括将测试过程中出现的测试问题记录在日志中以供用户下载此日志。
    步骤S307中具体还可包括步骤:
    将所有测试信息进行汇总处理;将测试过程中出现的测试问题记录在日志中以供用户下载此日志;以及将测试信息和汇总处理后的测试信息进行存储。
    可以将对待测应用进行测试过程中的测试信息存储到数据库中。若已执行完一个测试任务,则将数据库中存储的测试任务的状态更改为已测试完成状态。
    在本发明的实施例中,本发明通过接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;再接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据这些心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使此客户端控制所获取的移动终端对待测应用进行测试;再接收此客户端发送的测试过程中的测试信息,以供用户查看。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    还能够对待测应用完成屏幕显示的所有控件的遍历测试操作,测试比较全面。如果出现测试崩溃、无响应等测试问题时都可以方便地捕获到并给出移动终端对待测应用测试的日志信息,如果是移动终端分辨率引起的问题,也可以很方便地通过测试信息中的屏幕截图来捕获,从而提高了测试过程的响应速度。
    图4是本发明实施例提出的服务器的主要架构框图。请参阅图4,服务器包括:信息接收模块401、心跳包接收模块403、控制模块405以及测试信息处理模块407。
    具体地,信息接收模块401,用于接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务。
    心跳包接收模块403,用于接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据此些心跳包判断所获取的移动终端是否处于空闲状态。
    此外,心跳包接收模块403,还用于将移动终端的相关信息进行显示,移动终端的相关信息包括移动终端的品牌、型号、移动终端处于空闲状态或处于正在测试应用的状态等。
    心跳包接收模块403,还用于设定一预设时间,并判断在此预设时间内是否接收到客户端发送的心跳包,若在此预设时间内接收到此些客户端发送的心跳包,若接收到,则接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包。
    控制模块405,用于若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使此客户端控制所获取的移动终端执行此测试任务,以对待测应用进行测试。
    对待测应用进行测试包括对待测应用进行安装、运行、卸载等测试。
    测试信息处理模块407,用于接收并显示客户端发送的测试过程中的测试信息。
    测试信息为待测应用在测试过程中的屏幕截图、测试数据、测试进度等信息。
    测试信息处理模块407,还用于将所有测试信息进行汇总处理,将测试过程中出现的测试问题记录在日志中以供用户下载日志;将测试信息和汇总处理后的测试信息进行存储。
    在本发明的实施例中,本发明通过接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;再接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据这些心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的移动终端相连的客户端,使此客户端控制所获取的移动终端对待测应用进行测试;再接收此客户端发送的测试过程中的测试信 息,以供用户查看。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    还能够对待测应用完成屏幕显示的所有控件的遍历测试操作,测试比较全面。如果出现测试崩溃、无响应等测试问题时都可以方便地捕获到并给出移动终端对待测应用测试的日志信息,如果是移动终端分辨率引起的问题,也可以很方便地通过测试信息中的屏幕截图来捕获,从而提高了测试过程的响应速度。
    图5是本发明实施例提出的应用的云测试系统的主要架构框图。请参阅图5,应用的云测试系统包括:服务器以及至少一个客户端。每一客户端连接至少一移动终端(例如手机等),其中,服务器包括信息接收模块501、心跳包接收模块503、控制模块505以及测试信息处理模块507。每一客户端包括信息发送模块511、心跳包发送模块513、测试模块515以及测试信息接收模块517。
    具体地,每一信息发送模块511,用于获取待测应用信息和对待测应用进行测试的移动终端信息,向服务器发送获取的待测应用信息及移动终端信息。
    信息接收模块501,用于接收这些获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的多个待执行测试任务。
    每一心跳包发送模块513,用于每隔一段时间向服务器发送携带至少一移动终端的相关信息的心跳包。相关信息包括移动终端的品牌、型号、处于空闲状态或处于正在测试应用的状态等。
    心跳包接收模块503,用于接收并存储这些心跳包,根据这些心跳包判 断所获取的移动终端是否处于空闲状态。
    此外,心跳包接收模块503,还用于将移动终端的相关信息进行显示。
    心跳包接收模块503,还用于设定一预设时间,并判断在此预设时间内是否接收到客户端发送的心跳包,若在此预设时间内接收到客户端发送的心跳包,则接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包。
    控制模块505,用于若所获取的移动终端处于空闲状态,则将携带有待执行测试任务的心跳包回执发送给与所获取的这些移动终端相连的客户端。
    每一测试模块515,用于接收心跳包回执,并将此测试任务发送给所获取的移动终端,以控制所获取的移动终端根据测试任务对待测应用进行测试。
    对待测应用进行测试包括对待测应用进行安装、运行、卸载等测试。
    每一测试信息接收模块517,用于接收所获取的移动终端实时发送的测试过程中的测试信息,并将这些测试信息实时发送给服务器。其中,测试信息为待测应用在测试过程中的屏幕截图、测试数据、测试进度信息。
    测试信息处理模块507,用于接收并显示客户端发送的测试过程中的这些测试信息。
    此外,测试信息处理模块507,还用于将所有测试信息进行汇总处理,将测试过程中出现的测试问题记录在日志中以供用户下载此日志;将测试信息和汇总处理后的测试信息进行存储。
    在本发明的实施例中,本发明通过接收至少一客户端发送的获取的待测应用信息及移动终端信息,并根据获取的待测应用信息及移动终端信息生成相应的待执行测试任务;再接收并存储至少一客户端发送的携带有移动终端的相关信息的心跳包,根据这些心跳包判断所获取的移动终端是否处于空闲状态;若处于空闲状态,则将携带有待执行测试任务的心跳包回 执发送给与所获取的移动终端相连的客户端,使此客户端控制所获取的移动终端对待测应用进行测试;再接收此客户端发送的测试过程中的测试信息,并将这些测试信息实时发送给服务器以供用户查看。这样,可以自动利用连接于客户端上的移动终端对待测应用进行测试,并给出测试结果,从而很容易就可以在移动终端上完成相关的适配测试工作,提高了应用的测试效率、降低了测试成本、缩短了产品研发周期。
    还能够对待测应用完成屏幕显示的所有控件的遍历测试操作,测试比较全面。如果出现测试崩溃、无响应等测试问题时都可以方便地捕获到并给出移动终端对待测应用测试的日志信息,如果是移动终端分辨率引起的问题,也可以很方便地通过测试信息中的屏幕截图来捕获,从而提高了测试过程的响应速度。
    本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
    以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

    关 键  词:
    应用 测试 方法 系统 客户端 服务器
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:应用的云测试方法、系统、客户端及服务器.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4816895.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1