本发明专利技术适用于信息技术领域,提供了一种用于应用软件云测试的任务调度系统,包括分布式数据库服务器、任务调度服务器、消息队列服务器和数据处理服务器,所述分布式数据库服务器用于接收应用软件云测试平台的测试任务;所述任务调度服务器用于根据所述测试任务,以及根据所述应用软件云测试平台的测试服务器集群中的设备运行状况进行任务调度,向所述测试服务器集群派发所述测试任务;所述消息队列服务器用于收集所述测试服务器集群反馈的任务状态;所述数据处理服务器用于将所述消息队列服务器收集的所述任务状态发送给所述分布式数据库服务器以进行任务更新。本发明专利技术分散了整个任务调度系统的调度压力,保证了任务调度系统的稳定性和可靠性。
【技术实现步骤摘要】
【专利摘要】本专利技术适用于信息
,提供了一种用于应用软件云测试的任务调度系统,包括分布式数据库服务器、任务调度服务器、消息队列服务器和数据处理服务器,所述分布式数据库服务器用于接收应用软件云测试平台的测试任务;所述任务调度服务器用于根据所述测试任务,以及根据所述应用软件云测试平台的测试服务器集群中的设备运行状况进行任务调度,向所述测试服务器集群派发所述测试任务;所述消息队列服务器用于收集所述测试服务器集群反馈的任务状态;所述数据处理服务器用于将所述消息队列服务器收集的所述任务状态发送给所述分布式数据库服务器以进行任务更新。本专利技术分散了整个任务调度系统的调度压力,保证了任务调度系统的稳定性和可靠性。【专利说明】一种用于应用软件云测试的任务调度系统
本专利技术属于信息
,尤其涉及一种用于应用软件云测试的任务调度系统。
技术介绍
当前,移动操作系统的碎片化现象日趋严重,使得基于移动操作系统的应用软件测试工作困难重重,基于上述背景,应用软件的云测试平台应运而生,其为测试人员提供了一个自动化的云测试环境,同时提供测试报告和优化建议,以此来提高应用软件的测试效率。在应用软件云测试过程中,任务调度是一个重要的环节,然而,目前主流的任务调度系统大多都不能很好地支持跨节点的集群任务调度。以任务调度系统quartz为例,其任务调度功能都集成在一个节点上,使得该节点与集群的每个节点都有消息往来,从而加大了集群的负担,导致整个任务调度系统的稳定性和可靠性受到了影响。
技术实现思路
本专利技术实施例的目的在于提供一种应用软件云测试的任务调度方法,旨在解决目前任务调度系统所有的任务调度功能都集成在一个节点上,导致任务调度系统的稳定性和可靠性差的问题。本专利技术实施例是这样实现的,一种用于应用软件云测试的任务调度系统,其特征在于,所述系统包括分布式数据库服务器、任务调度服务器、消息队列服务器和数据处理服务器,所述分布式数据库服务器用于接收应用软件云测试平台的测试任务;所述任务调度服务器用于根据所述分布式数据库服务器接收的所述测试任务,以及根据所述应用软件云测试平台的测试服务器集群中的设备运行状况进行任务调度,向所述测试服务器集群派发所述测试任务;所述消息队列服务器用于收集所述测试服务器集群反馈的任务状态;所述数据处理服务器用于将所述消息队列服务器收集的所述任务状态发送给所述分布式数据库服务器以进行任务更新。本专利技术实施例提供的任务调度系统可以用于应用软件云测试平台的任务调度中,作为云测试平台的一个子集群存在,其在任务调度的过程中,将任务的派发与任务状态的回收分散到不同服务器上实现,由此分散了整个任务调度系统的调度压力,从而进一步保证了任务调度系统的稳定性和可靠性。【专利附图】【附图说明】图1是本专利技术实施例提供的应用软件云测试的任务调度系统的结构框图;图2是本专利技术实施例提供的用于应用软件云测试的任务调度系统的结构框图。【具体实施方式】为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例提供的任务调度系统可以用于应用软件云测试平台的任务调度中,作为云测试平台的一个子集群存在,其在任务调度的过程中,将任务的派发与任务状态的回收分散到不同服务器上实现,由此分散了整个任务调度系统的调度压力,从而进一步保证了任务调度系统的稳定性和可靠性。图1示出了本专利技术实施例提供的云测试平台的结构框图,为了便于说明,仅示出了与本实施例相关的部分。参照图1,该云测试平台主要包括了任务调度集群11和测试服务器集群12,在本专利技术实施例中,任务调度系统是整个应用软件云测试平台的核心,其部署在任务调度集群11中,主要需要具备任务派发、任务状态更新、设备运行状况更新等核心功能。在具体的任务调度过程中,任务调度系统在接到测试任务之后,需要将测试任务派发给测试服务器集群12以进行任务执行,同时接收测试服务器集群12返回的任务执行情况,以更新最新的任务状态。与此同时,由于需要根据测试服务器集群12中的每台测试设备的实际运行状况来进行任务调度,因此,任务调度系统也必须及时地掌握测试服务器集群12中的设备运行状况,保证测试任务能够被合理、高效地分配给合适的测试设备。而测试任务的执行部署在了测试服务器集群12中,测试服务器集群12中包括了多台测试服务器,且每台测试服务器均同时与多台测试设备保持通信关系,这些测试设备包括但不限于平板、手机等移动终端,通过测试服务器集群12所集合的测试设备,能够实现应用软件的云测试。以下,对本专利技术实施例提供的用于应用软件云测试的任务调度系统的架构进行详细阐述:图2示出了本专利技术实施例提供的用于应用软件云测试的任务调度系统的结构框图,为了便于说明,仅示出了与本实施例相关的部分。参照图2,该任务调度系统为一个服务器集群,该服务器集群可以由分布式数据库服务器21、任务调度服务器22、消息队列服务器23和数据处理服务器24组成,其中:分布式数据库服务器21用于接收应用软件云测试平台的测试任务,其获取应用软件云测试平台下发的任务信息,该任务信息指示了当前应用软件云测试平台需要执行的测试任务,即任务调度系统当前需要进行调度分配的测试任务。任务调度服务器22用于根据分布式数据库服务器21接收的测试任务,以及根据应用软件云测试平台的测试服务器集群中的设备运行状况进行任务调度,向测试服务器集群派发测试任务,实现任务调度。消息队列服务器23用于收集测试服务器集群反馈的任务状态。具体地,测试服务器集群反馈的任务状态包括其下的测试设备对测试任务的完成情况以及在测试任务的执行过程中由测试设备生成的测试数据。数据处理服务器24用于处理消息队列服务器23收集的任务状态,并将任务状态发送给分布式数据库服务器以进行任务更新。在图1所示的任务调度系统中,将任务派发与任务状态更新分别部署在不同的服务器节点上来实现,从而分散了整个系统的调度压力,并且将任务信息和设备信息在数据库中进行备份,使得任务调度系统一旦崩溃也能很快地恢复。接下来,结合图2对任务调度系统的各个组成部分进行进一步阐述:分布式数据库服务器21还用于根据数据处理服务器24发送的任务状态,对本地存储的任务列表进行更新,其中,任务列表中展示了当前未完成的测试任务,以方便任务调度服务器22及时跟进测试任务的完成情况,对未完成的测试任务进行二次调度。在本实施例中,当前未完成的测试任务均以队列的形式存储在分布式数据库服务器21的任务列表中。进一步地,作为本专利技术的一个实施例,整个任务调度系统所掌握的测试设备的实际运行状况也可以存储在分布式数据库服务器21中,具体地:分布式数据库服务器21还用于存储设备列表,该设备列表中展示了测试服务器集群的设备运行状况。在本实施例中,通过将任务列表和设备列表均备份在分布式数据库服务器21中,一旦任务调度系统发生了崩溃,其也能很快地通过数据备份来实现恢复,由此提高了任务调度系统的可靠性。进一步地,作为本专利技术的一个实施例,整个任务调度系统所掌握的测试设备的实际运行状况也可以存储在任务调度服务器22中,具体地:任务调度服务器22还用于存储设备列表,该设备列表中本文档来自技高网...
【技术保护点】
一种用于应用软件云测试的任务调度系统,其特征在于,所述系统包括分布式数据库服务器、任务调度服务器、消息队列服务器和数据处理服务器,所述分布式数据库服务器用于接收应用软件云测试平台的测试任务;所述任务调度服务器用于根据所述分布式数据库服务器接收的所述测试任务,以及根据所述应用软件云测试平台的测试服务器集群中的设备运行状况进行任务调度,向所述测试服务器集群派发所述测试任务;所述消息队列服务器用于收集所述测试服务器集群反馈的任务状态;所述数据处理服务器用于将所述消息队列服务器收集的所述任务状态发送给所述分布式数据库服务器以进行任务更新。
【技术特征摘要】
【专利技术属性】
技术研发人员:曾经纬,贝振东,喻之斌,徐文星,须成忠,
申请(专利权)人:中国科学院深圳先进技术研究院,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。