CN117971674A - 自动化脚本的执行管理方法、装置、电子设备和介质 - Google Patents
自动化脚本的执行管理方法、装置、电子设备和介质 Download PDFInfo
- Publication number
- CN117971674A CN117971674A CN202410137631.1A CN202410137631A CN117971674A CN 117971674 A CN117971674 A CN 117971674A CN 202410137631 A CN202410137631 A CN 202410137631A CN 117971674 A CN117971674 A CN 117971674A
- Authority
- CN
- China
- Prior art keywords
- execution
- failure
- retry
- automation script
- service node
- 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.)
- Pending
Links
- 238000013515 script Methods 0.000 title claims abstract description 206
- 238000007726 management method Methods 0.000 title claims description 71
- 238000012360 testing method Methods 0.000 claims abstract description 88
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000000977 initiatory effect Effects 0.000 claims abstract description 22
- 238000004590 computer program Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 16
- 230000002618 waking effect Effects 0.000 claims description 9
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 230000015654 memory Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000012544 monitoring process Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
提供了一种自动化脚本的执行管理方法、装置、电子设备和介质,可以应用于云计算技术领域。所述方法包括:在测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;基于所述执行情况,获取请求类型;基于首次执行失败:将所述执行情况保存到执行记录数据库中;唤醒失败计数器,记录失败次数;由重试调度器发起所述目标自动化脚本的重试调度;响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用服务节点将所述执行记录数据库中保存的所有执行情况发送到中心服务器。
Description
技术领域
本发明涉及云计算技术领域,更具体地涉及一种自动化脚本的执行管理方法、装置、电子设备和介质。
背景技术
自动化脚本在软件测试领域发挥着关键作用,通过提高测试效率、减少人工干预,加速软件交付周期。目前,针对中心化服务器上部署的自动化脚本,诸如Jenkins等工具已经相对成熟地处理了执行失败的场景,能够实现自主重试和失败上报。
然而,面对测试人员主动在终端上发起的自动化脚本,当前技术面临一些挑战。在这种场景下,执行失败的脚本无法得到及时处理,缺乏自动重试和有效上报的机制。因此,亟需一种自动调度的方法解决该问题。
发明内容
鉴于上述问题,根据本发明的第一方面,提供了一种自动化脚本的执行管理方法,应用于中心服务器、服务节点和测试用终端,所述服务节点包括执行记录数据库、重试调度器和失败计数器,所述方法包括:在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。
根据一些示例性实施例,响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数,具体包括:响应于所述重试调度执行失败,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中;增加所述失败计数器中的失败次数;以及响应于所述失败次数未达到所述最大重试次数,由重试调度器再次发起重试调度。
根据一些示例性实施例,在由所述重试调度器发起所述目标自动化脚本的重试调度之后,所述方法还包括:若所述重试调度执行成功,清理所述失败计数器的进程;以及将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
根据一些示例性实施例,所述服务节点部署定时删除任务,所述定时删除任务用于按照预设的第一时间间隔删除所述执行记录数据库中的历史执行情况。
根据一些示例性实施例,所述中心服务器与多个服务节点建立1:N的管理模式,所述服务节点与多个测试用终端建立1:M的管理模式,其中,N、M均为正整数。
根据一些示例性实施例,所述方法还包括:所述中心服务器通过所述服务节点的唯一序列号进行与所述服务节点的通信;所述服务节点通过所述测试用终端的唯一序列号进行与所述测试用终端的通信;以及所述测试用终端为每个首次执行的自动化脚本分配唯一的随机序列号,在所述自动化脚本重试调度时持续使用相同的序列号并标记执行次数。
根据一些示例性实施例,所述执行情况包括执行成功或失败记录、服务节点序列号、测试用终端序列号、自动化脚本序列号、自动化脚本执行次数和失败原因,所述方法还包括:所述中心服务器按照预设的第二时间间隔统计和分析所述执行情况,获取与服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数对应的失败原因分类和失败原因排序;以及基于所述失败原因分类和所述失败原因排序,进行自动预警。
根据一些示例性实施例,所述最大重试次数基于***负载、资源配置和测试场景因素进行动态调整。
根据本发明的第二方面,提出了一种自动化脚本的执行管理装置,应用于中心服务器、服务节点和测试用终端,所述服务节点包括执行记录数据库、重试调度器和失败计数器,所述装置包括:执行情况获取模块,用于:在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;请求类型获取模块,用于:基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;重试调度发起模块,用于:基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;重试调度再次发起模块,用于:响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及发送模块,用于:响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。
根据一些示例性实施例,所述重试调度再次发起模块可以包括第一保存单元、失败次数增加单元和重试调度再次发起单元。
根据一些示例性实施例,所述第一保存单元可以用于响应于所述重试调度执行失败,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
根据一些示例性实施例,所述失败次数增加单元可以用于增加所述失败计数器中的失败次数。
根据一些示例性实施例,所述重试调度再次发起单元可以用于响应于所述失败次数未达到所述最大重试次数,由重试调度器再次发起重试调度。
根据一些示例性实施例,所述自动化脚本的执行管理装置还可以包括执行成功模块。
根据一些示例性实施例,所述执行成功模块可以包括清理单元和第二保存单元。
根据一些示例性实施例,所述清理单元可以用于若所述重试调度执行成功,清理所述失败计数器的进程。
根据一些示例性实施例,所述第二保存单元可以用于将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
根据一些示例性实施例,所述自动化脚本的执行管理装置还可以包括自动预警模块。
根据一些示例性实施例,所述自动预警模块可以包括统计单元和自动预警单元。
根据一些示例性实施例,所述统计单元可以用于所述中心服务器按照预设的第二时间间隔统计和分析所述执行情况,获取与服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数对应的失败原因分类和失败原因排序。
根据一些示例性实施例,所述自动预警单元可以用于基于所述失败原因分类和所述失败原因排序,进行自动预警。
根据本发明的第三方面,提出了一种自动化脚本的执行管理***,所述***包括:测试用终端,用于:执行目标自动化脚本,获取所述目标自动化脚本的执行情况;基于所述执行情况,发送请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;服务节点,用于:基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,并将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器;以及中心服务器,用于:按照预设的第二时间间隔统计和分析所述执行情况。
根据本发明的第四方面,提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的方法。
根据本发明的第五方面,提供一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上所述的方法。
根据本发明的第六方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
上述一个或多个实施例具有如下优点或有益效果:本发明提供的自动化脚本的执行管理方法,通过中心服务器、服务节点和测试用终端的多层管理调度的方式自动发起自动化脚本重试,可以有效提高测试人员在终端上执行的自动化脚本的执行成功率,从而能够节省计算资源,提升计算效率;同时,中心服务器、服务节点和测试用终端构成的三层管理方式可以通过扩充新的服务节点实现平滑扩充,相比两层模型必须通过扩容中心服务器服务能力的模式更加便捷而平滑,从而能够提升***的内部性能;此外,通过统一的失败原因管理和上传,帮助测试人员及时向管理人员发布自动化脚本执行失败的结果,帮助管理人员及时分析、及时解决问题,提高测试工作的整体效率,从而提升了用户体验。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1A示意性示出了根据本发明实施例的自动化脚本的执行管理方法、装置、设备、介质的应用场景图。
图1B示意性示出了根据本发明实施例的自动化脚本的执行管理***的结构图。
图2示意性示出了根据本发明实施例的自动化脚本的执行管理方法的流程图。
图3示意性示出了根据本发明实施例的再次发起重试调度的方法的流程图。
图4示意性示出了根据本发明实施例的重试调度执行成功后的处理方法的流程图。
图5示意性示出了根据本发明实施例的实时监控和自动预警的方法的流程图。
图6示意性示出了根据本发明实施例的自动化脚本的执行管理步骤。
图7示意性示出了根据本发明实施例的自动化脚本的执行管理装置的结构框图。
图8示意性示出了根据本发明实施例的适于自动化脚本的执行管理方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本发明的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本发明的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本发明实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本发明。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。
在本发明的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
首先,对本文中记载的技术术语作如下解释和说明。
自动化脚本:测试人员根据业务内容、程序功能编写的集合了多种测试案例的脚本,测试人员可通过运行自动化脚本开展自动化测试,快速运行大量案例,提高测试效率。
测试用终端:测试人员使用的用于开展测试工作的设备,通常为搭载Windows操作***的个人办公电脑。
自动化脚本在软件开发和测试中扮演着关键的角色,以提高效率、减少人为错误和确保一致性。在目前的技术发展中,针对中心化服务器上的自动化脚本,已经建立了完善的集中化处理机制,如Jenkins等工具,能够实现自主重试和失败上报。然而,在测试人员主动在终端上发起的自动化脚本中,由于分散性和独立性,在测试人员终端上发起的自动化脚本,一旦发生执行失败的情况,当前技术无法实现自动重试和失败上报的功能。这种局面导致了以下问题:
1、无法自动应对失败:目前缺乏自动调度的方法来处理测试人员终端上自动化脚本的失败情况,使得在发生问题时需要手动介入,增加了管理和运维的负担;
2、缺乏集中化的监控和管理:与中心化服务器上的脚本相比,测试人员终端上的自动化脚本缺乏集中的监控和管理,难以实现全局性的执行状态追踪和综合分析;
3、效率和一致性受限:当测试人员分散地在各自终端上执行脚本时,存在效率低下和一致性差的问题。缺乏自动调度机制可能导致执行失败的脚本长时间未得到处理,影响整体效率。
基于此,本发明的实施例提供了一种自动化脚本的执行管理方法,应用于中心服务器、服务节点和测试用终端,所述服务节点包括执行记录数据库、重试调度器和失败计数器,所述方法包括:在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。本发明提供的自动化脚本的执行管理方法,通过中心服务器、服务节点和测试用终端的多层管理调度的方式自动发起自动化脚本重试,可以有效提高测试人员在终端上执行的自动化脚本的执行成功率,从而能够节省计算资源,提升计算效率;同时,中心服务器、服务节点和测试用终端构成的三层管理方式可以通过扩充新的服务节点实现平滑扩充,相比两层模型必须通过扩容中心服务器服务能力的模式更加便捷而平滑,从而能够提升***的内部性能;此外,通过统一的失败原因管理和上传,帮助测试人员及时向管理人员发布自动化脚本执行失败的结果,帮助管理人员及时分析、及时解决问题,提高测试工作的整体效率,从而提升了用户体验。
需要说明的是,本发明确定的自动化脚本的执行管理方法、装置、设备和介质可用于云计算技术领域,也可用于金融领域,还可以用于除云计算技术领域以及金融领域之外的多种领域。本发明的实施例提供的自动化脚本的执行管理方法、装置、设备和介质的应用领域不做限定。
在本发明的技术方案中,所涉及的用户信息(包括但不限于用户个人信息、用户图像信息、用户设备信息,例如位置信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、存储、使用、加工、传输、提供、公开和应用等处理,均遵守相关国家和地区的相关法律法规和标准,采取了必要保密措施,不违背公序良俗,并提供有相应的操作入口,供用户选择授权或者拒绝。
图1A示意性示出了根据本发明实施例的自动化脚本的执行管理方法、装置、设备、介质的应用场景图。
如图1A所示,根据该实施例的应用场景100可以包括第一设备101、第二设备103和第三设备105。例如,第一设备101上可以运行各类信息***,该各类信息***可以提供与自动化脚本的执行管理的相关的各种类型的数据和信息。第二设备103上可以运行与数据中台相关的工具、平台。第三设备105上可以运行本发明实施例提供的自动化脚本的执行管理的方法。
例如,所述数据中台可以介于前台和后台之间,是企业级的数据共享和能力复用平台。所述数据中台从后台及业务中台将数据导入,完成海量数据的存储、计算、产品化包装过程,同时辅助以数据治理,保证数据的输入输出质量。这样,所述数据中台可以为前台基于数据的定制化提供强大的支撑,也帮助业务中台基于数据反馈做持续的演进。
在本发明的实施例中,第一设备101上运行的各类信息***可以实时或定期将与自动化脚本的执行管理的相关的各种类型的数据和信息上传至所述数据中台。所述数据中台对上传的数据和信息进行分类的存储和处理,例如,存储于数据湖中。在第三设备105运行所述自动化脚本的执行管理的方法时,第三设备105从所述数据中台实时获取需要的数据和信息。
例如,第一设备101与第二设备103之间可以通过网络102连接,网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。第二设备103与第三设备105之间可以通过网络104连接,网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。
例如,第一设备101、第二设备103和第三设备105可以是提供各种服务的服务器。
需要说明的是,本发明实施例所提供的自动化脚本的执行管理方法一般可以由第三设备105执行。相应地,本发明实施例所提供的自动化脚本的执行管理装置一般可以设置于第三设备105中。本发明实施例所提供的自动化脚本的执行管理方法也可以由不同于第三设备105且能够与第二设备103通信的服务器或服务器集群执行。相应地,本发明实施例所提供的自动化脚本的执行管理装置也可以设置于不同于第三设备105且能够与第二设备103通信的服务器或服务器集群中。
应该理解,图1A中的设备和网络的数目仅仅是示意性的。根据实现需要,可以具有任意数目的设备和网络。
图1B示意性示出了根据本发明实施例的自动化脚本的执行管理***的结构图。
如图1B所示,根据该实施例的自动化脚本的执行管理***可以基于三层服务结构的模型进行构建,包括中心服务器层、服务节点层和测试用终端层,所述服务节点层包括执行记录数据库、重试调度器和失败计数器。其中,可以将每个测试人员的用于执行自动化脚本的终端连接到各自归属的服务节点,并由各个服务节点管理各个终端的自动化脚本执行情况,并由服务节点自动针对不同的失败的情况向测试人员的终端发起脚本自动处理,实现对运行在测试人员的终端上的自动化脚本进行自动失败处理,并对最终成功或最终失败的脚本执行记录上传中心服务器保存并提交给管理人员分析。
在本发明的实施例中,所述中心服务器与多个服务节点可以建立1:N的管理模式,所述服务节点与多个测试用终端可以建立1:M的管理模式,其中,N、M均为正整数。
在本发明的实施例中,通过1:N的管理模式,中心服务器能够有效地协调多个服务节点的工作,实现***整体的高效运行和管理;1:M的管理模式则使得测试用终端可以分布式地发起任务,通过多个服务节点同时执行,提高了整体***的性能。
图2示意性示出了根据本发明实施例的自动化脚本的执行管理方法的流程图。
如图2所示,该实施例的自动化脚本的执行管理方法200可以包括操作S210~操作S250。
在操作S210,在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况。
在本发明的实施例中,所述目标自动化脚本的执行情况可以包括目标自动化脚本的执行成功或失败记录,对应的服务节点序列号、测试用终端序列号、自动化脚本序列号以及自动化脚本执行次数和失败原因。
在操作S220,基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败。
在本发明的实施例中,执行管理***可以基于所述执行情况获取请求类型,以确定自动化脚本执行的初步结果,包括目标自动化脚本的首次执行成功或首次执行失败,以便后续的处理。
在操作S230,基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度。
在本发明的实施例中,若首次执行失败,可以将执行情况保存到服务节点的执行记录数据库中,因此可以详细记录脚本的执行状态、服务节点序列号、测试用终端序列号、脚本序列号、执行次数和失败原因等信息,以供后续的分析和追踪。
在本发明的实施例中,可以通过服务节点中设置的唤醒失败计数器对同一测试用终端上的同一自动化脚本记录失败次数一次,以便了解脚本的执行历史和失败的趋势。
在本发明的实施例中,服务节点中设置的重试调度器可以自动尝试再次执行该脚本,以期通过重试来解决执行失败的问题。
在操作S240,响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数。该步骤可以确保***在面对脚本执行失败的情况时,能够自动不断尝试重试,提高脚本执行的成功概率。
在本发明的实施例中,所述最大重试次数可以基于***负载、资源配置和测试场景因素进行动态调整。具体地,当***负载较轻时,可以允许更多的重试次数,以提高脚本执行的成功率,在高负载时,可以适度降低最大重试次数,以释放资源和减轻***压力;考虑到***资源的实时配置情况,例如服务器性能、网络带宽等,动态调整最大重试次数有助于在资源充足时提高脚本的执行机会,而在资源紧张时适度减少重试以保障整体***的稳定性;不同的测试场景可能对脚本执行的要求不同,动态调整最大重试次数使得***能够根据具体的测试需求进行灵活的配置。例如,对于关键性的测试场景,可以允许更多的重试,而对于次要场景,可以降低最大重试次数以节省资源。
在本发明的实施例中,实现最大重试次数的动态调整可以采用包括但不限于智能算法、监控***负载指标和资源利用率,并根据预设的规则或策略进行最大重试次数的动态调整等方法。这样的设计使得***能够更好地适应不同的工作负荷和测试场景,提高了***的灵活性和性能适应性。
图3示意性示出了根据本发明实施例的再次发起重试调度的方法的流程图。
如图3所示,该实施例的再次发起重试调度的方法可以包括操作S310~操作S330,该操作S310~操作S330至少可以部分执行操作S240。
在操作S3]0,响应于所述重试调度执行失败,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
在操作S320,增加所述失败计数器中的失败次数。
在操作S330,响应于所述失败次数未达到所述最大重试次数,由重试调度器再次发起重试调度。
此外,在由所述重试调度器发起所述目标自动化脚本的重试调度之后,本发明的实施例还提供了响应于重试调度执行成功的处理方法。
图4示意性示出了根据本发明实施例的重试调度执行成功后的处理方法的流程图。
如图4所示,该实施例的重试调度执行成功后的处理方法可以包括操作S410~操作S420。
在操作S410,若所述重试调度执行成功,清理所述失败计数器的进程。
在本发明的实施例中,清理失败计数器的进程可以确保***在成功执行后不再持续记录失败次数,避免了对成功脚本的不必要处理,保持计数器的状态准确性。
在操作S420,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
在本发明的实施例中,在重试调度执行成功后,可以将包括执行状态、服务节点序列号、测试用终端序列号、脚本序列号、执行次数和历史的失败原因等信息的执行情况记录到服务节点的执行记录数据库中,这有助于建立脚本执行的完整历史记录。
返回参照图2,在操作S250,响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。
通过上述操作流程和方法可知,本发明的实施例的三层服务结构的执行管理***涉及的数据交互方式可以包括:
1.测试用终端向服务节点交互:测试用终端在执行完脚本后即向服务节点发起请求,服务节点收到终端发送的请求后即根据请求类型处理数据,例如登记执行记录数据库、更新失败计数器等;
2.服务节点向测试用终端交互:测试用终端与服务节点之间是双向交互,服务节点处理完测试用终端上送的请求即时向测试用终端发起请求,在测试用终端执行脚本重试或终止等操作;
3.服务节点向中心服务器交互(单向交互):服务节点可以定期向中心服务器上传脚本执行记录数、最终脚本失败数等执行情况,定期上传时间可以根据脚本平均执行时间、管理人员统计时效和运维人员处理能力等因素决定,例如,一般设置这个服务节点向中心服务器上传数据的定时任务设置在每15-30分钟一次为佳。
此外,为了确保了在***中不同层次的通信能够通过唯一序列号进行有效管理和追踪,本发明的实施例还提供了中心服务器、服务节点和自动化脚本之间的管理方式和通信方式:
1.所述中心服务器通过所述服务节点的唯一序列号进行与所述服务节点的通信:由于中心服务器与服务节点之间的管理模式为1:N模式,中心服务器在每个服务节点最初加入服务节点序列时,可以分配一个唯一序列号,且在服务节点退出之后,该退出的服务节点使用过的序列号也不再会被启用,若该服务节点重新加入,也会分配新的序列号;
2.所述服务节点通过所述测试用终端的唯一序列号进行与所述测试用终端的通信:由于服务节点与测试用终端之间的管理模式为1:M的模式,服务节点在每台测试用终端最初加入测试用终端序列时,可以分配一个唯一序列号,且在测试用终端退出之后,该退出的测试用终端使用过的序列号也不再会被启用,若该测试用终端重新加入,也会分配新的序列号;
3.所述测试用终端为每个首次执行的自动化脚本分配唯一的随机序列号,在脚本重试时持续使用相同的序列号并标记执行次数:测试用终端会为每个在其上首次执行的脚本分配一个随机序列号,并打上一个第1次执行的标签,每次终端收到脚本的重试请求后,可以仍旧重复使用该序列号,但打上了第L(不为1的正整数)次执行的标签;
4.服务节点对执行自动化脚本的管理:服务节点收集自动化脚本执行记录时,会将测试用终端的唯一序列号、自动化脚本的唯一序列号和自动化脚本执行次数标签等标志一并记录,最终上传中心服务器;
5.中心服务器对执行自动化脚本的管理:中心服务器统计自动化脚本执行情况时,会将服务节点的唯一序列号、测试用终端的唯一序列号、自动化脚本的唯一序列号和自动化脚本执行次数标签等标志一并记录。
基于上述交互方式和通信方式,本发明的实施例还提供了实时监控和自动预警的方法,以实时监控自动化脚本的执行状态,及时的统计能够提供对整个***运行状况的实时了解。
图5示意性示出了根据本发明实施例的实时监控和自动预警的方法的流程图。
如图5所示,该实施例的实时监控和自动预警的方法可以包括操作S510~操作S520。
在操作S510,所述中心服务器按照预设的第二时间间隔统计和分析所述执行情况,获取与服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数对应的失败原因分类和失败原因排序。
在本发明的实施例中,可以将所有执行情况按照服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数的关键标识进行分类以及对每个分类进行统计,以获取与服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数对应的失败原因分类和排序信息。
在操作S520,基于所述失败原因分类和所述失败原因排序,进行自动预警。
在本发明的实施例中,可以对于同一类失败原因,***进行汇总和分析,了解某一类失败原因在整体执行中的占比和趋势。基于分析的结果,可以对所有的失败原因按照发生的频率或其他指标进行排序,以确定哪些失败原因是最为常见或最为严重的。
在本发明的实施例中,基于对失败原因的分类和排序,***可以设置自动预警规则。例如,当某一类失败原因的占比超过阈值或某个失败原因排名升高时,***可以触发自动预警机制,通知相关管理人员或运维人员。其中,可以包括向管理人员和运维人员发送警报、通知或其他预警机制,提醒他们关注具有高频失败或严重失败原因的自动化脚本。
在本发明的实施例中,通过对执行情况的统计和分析,使得中心服务器能够及时识别出执行中存在的问题,通过自动预警提前发现潜在的***异常或测试问题,从而采取措施进行调整和优化。这有助于提高整个***的稳定性和可靠性。
图6示意性示出了根据本发明实施例的自动化脚本的执行管理步骤。
如图6所示,自动化脚本的执行管理步骤可以包括:测试人员在测试用终端上发起目标自动化脚本的执行,触发整个执行流程的开始;根据脚本的执行结果,测试用终端可以获取执行情况,包括执行成功或失败记录、服务节点序列号、测试用终端序列号、自动化脚本序列号、自动化脚本执行次数和失败原因等信息,并判断请求类型,包括目标自动化脚本的首次执行成功或首次执行失败;基于首次执行失败,服务节点可以将执行情况保存到执行记录数据库中,确保对首次执行失败的脚本进行详细记录,同时唤醒失败计数器,记录失败次数,用于跟踪脚本的失败历史,并由重试调度器发起目标自动化脚本的重试调度,尝试再次执行该脚本;若重试调度再次执行失败,服务节点可以再次发起重试调度,直到失败计数器达到预设的最大重试次数;响应于重试调度均执行失败,可以将所有执行情况保存到执行记录数据库中,确保对所有执行情况进行全面记录;利用服务节点,将执行记录数据库中保存的所有执行情况发送到中心服务器,以便进行进一步的分析和监控。
在本发明的实施例中,所述服务节点还可以部署定时删除任务,所述定时删除任务用于按照预设的第一时间间隔删除所述执行记录数据库中的历史执行情况,以避免历史执行情况长时间占据数据库,影响运行速度。
根据本发明提供的自动化脚本的执行管理方法,通过中心服务器、服务节点和测试用终端的多层管理调度的方式自动发起自动化脚本重试,可以有效提高测试人员在终端上执行的自动化脚本的执行成功率,从而能够节省计算资源,提升计算效率;同时,中心服务器、服务节点和测试用终端构成的三层管理方式可以通过扩充新的服务节点实现平滑扩充,相比两层模型必须通过扩容中心服务器服务能力的模式更加便捷而平滑,从而能够提升***的内部性能;此外,通过统一的失败原因管理和上传,帮助测试人员及时向管理人员发布自动化脚本执行失败的结果,帮助管理人员及时分析、及时解决问题,提高测试工作的整体效率,从而提升了用户体验。具体地,带来以下有益效果:
1.通过多层管理调度的方式实时记录执行情况、动态调整最大重试次数、以及自动重试机制,***可以有效地提高自动化脚本的执行成功率,特别是对于初次执行失败的脚本,***迅速响应并采取相应措施,从而提高了脚本的通过率;
2.可将原先分散在各个终端上的自动化脚本执行记录进行了统一管理,降低了自动化脚本的管理成本;
3.由于使用了三层服务模型,相比于常规的两层服务模型,三层模型在扩展性上有极大的突破,面对测试终端数量快速上升至突破管理节点的服务数量物理上限的情况时,三层模型可以通过扩充新的服务节点实现平滑扩充,相比两层模型必须通过扩容中心服务器服务能力的模式更加便捷而平滑;
4.通过失败计数器、重试调度器等机制,***能够自动地对执行失败的脚本进行重试,并在一定程度上实现故障的自动恢复,这有助于降低人工干预的需求,提高***的自动化程度;
5.动态调整最大重试次数的功能,使***能够根据实际***负载和资源配置情况,灵活调整重试策略,确保***在不同环境下能够保持稳定的执行性能;
6.通过定期发送执行情况到中心服务器,***能够进行长期的统计和分析,形成详实的报告,从而有助于对自动化测试***进行持续优化,根据实际情况调整脚本、***配置等,提高整体的测试效率;
7.通过中心服务器的统计和分析,***能够实时监控脚本执行情况,对失败原因进行分类和排序,并进行自动预警,这使得管理人员和运维人员可以及时了解***状态,采取相应的措施,提高***的稳定性和可靠性。
基于上述自动化脚本的执行管理方法,本发明还提供了一种自动化脚本的执行管理装置。以下将结合图7对该装置进行详细描述。
图7示意性示出了根据本发明实施例的自动化脚本的执行管理装置的结构框图。
如图7所示,根据该实施例的自动化脚本的执行管理装置700包括执行情况获取模块710、请求类型获取模块720、重试调度发起模块730、重试调度再次发起模块740和发送模块750。
所述执行情况获取模块710可以用于在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况。在一实施例中,所述执行情况获取模块710可以用于执行前文描述的操作S210,在此不再赘述。
所述请求类型获取模块720可以用于基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败。在一实施例中,所述请求类型获取模块720可以用于执行前文描述的操作S220,在此不再赘述。
所述重试调度发起模块730可以用于基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度。在一实施例中,所述重试调度发起模块730可以用于执行前文描述的操作S230,在此不再赘述。
所述重试调度再次发起模块740可以用于响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数。在一实施例中,所述重试调度再次发起模块740可以用于执行前文描述的操作S240,在此不再赘述。
所述发送模块750可以用于响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。在一实施例中,所述发送模块750可以用于执行前文描述的操作S250,在此不再赘述。
根据本发明的实施例,所述重试调度再次发起模块740可以包括第一保存单元、失败次数增加单元和重试调度再次发起单元。
所述第一保存单元可以用于响应于所述重试调度执行失败,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。在一实施例中,所述第一保存单元可以用于执行前文描述的操作S310,在此不再赘述。
所述失败次数增加单元可以用于增加所述失败计数器中的失败次数。在一实施例中,所述失败次数增加单元可以用于执行前文描述的操作S320,在此不再赘述。
所述重试调度再次发起单元可以用于响应于所述失败次数未达到所述最大重试次数,由重试调度器再次发起重试调度。在一实施例中,所述重试调度再次发起单元可以用于执行前文描述的操作S330,在此不再赘述。
根据本发明的实施例,所述自动化脚本的执行管理装置700还可以包括执行成功模块。
根据本发明的实施例,所述执行成功模块可以包括清理单元和第二保存单元。
所述清理单元可以用于若所述重试调度执行成功,清理所述失败计数器的进程。在一实施例中,所述清理单元可以用于执行前文描述的操作S410,在此不再赘述。
所述第二保存单元可以用于将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。在一实施例中,所述第二保存单元可以用于执行前文描述的操作S420,在此不再赘述。
根据本发明的实施例,所述自动化脚本的执行管理装置700还可以包括自动预警模块。
根据本发明的实施例,所述自动预警模块可以包括统计单元和自动预警单元。
所述统计单元可以用于所述中心服务器按照预设的第二时间间隔统计和分析所述执行情况,获取与服务节点序列号、测试用终端序列号、自动化脚本序列号和自动化脚本执行次数对应的失败原因分类和失败原因排序。在一实施例中,所述统计单元可以用于执行前文描述的操作S510,在此不再赘述。
所述自动预警单元可以用于基于所述失败原因分类和所述失败原因排序,进行自动预警。在一实施例中,所述自动预警单元可以用于执行前文描述的操作S520,在此不再赘述。
根据本发明的实施例,执行情况获取模块710、请求类型获取模块720、重试调度发起模块730、重试调度再次发起模块740和发送模块750中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,执行情况获取模块710、请求类型获取模块720、重试调度发起模块730、重试调度再次发起模块740和发送模块750中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,执行情况获取模块710、请求类型获取模块720、重试调度发起模块730、重试调度再次发起模块740和发送模块750中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图8示意性示出了根据本发明实施例的适于自动化脚本的执行管理方法的电子设备的方框图。
如图8所示,根据本发明实施例的电子设备800包括处理器801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。处理器801例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器801还可以包括用于缓存用途的板载存储器。处理器801可以包括用于执行根据本发明实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 803中,存储有电子设备800操作所需的各种程序和数据。处理器801、ROM802以及RAM 803通过总线804彼此相连。处理器801通过执行ROM 802和/或RAM 803中的程序来执行根据本发明实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 802和RAM 803以外的一个或多个存储器中。处理器801也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本发明实施例的方法流程的各种操作。
根据本发明的实施例,电子设备800还可以包括输入/输出(I/O)接口805,输入/输出(I/O)接口805也连接至总线804。电子设备800还可以包括连接至I/O接口805的以下部件中的一项或多项:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/***中所包含的;也可以是单独存在,而未装配入该设备/装置/***中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本发明实施例的方法。
根据本发明的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。例如,根据本发明的实施例,计算机可读存储介质可以包括上文描述的ROM 802和/或RAM 803和/或ROM 802和RAM 803以外的一个或多个存储器。
本发明的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机***中运行时,该程序代码用于使计算机***实现本发明实施例所提供的方法。
在该计算机程序被处理器801执行时执行本发明实施例的***/装置中限定的上述功能。根据本发明的实施例,上文描述的***、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分809被下载和安装,和/或从可拆卸介质811被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被处理器801执行时,执行本发明实施例的***中限定的上述功能。根据本发明的实施例,上文描述的***、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本发明的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上对本发明的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本发明的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。不脱离本发明的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本发明的范围之内。
Claims (13)
1.一种自动化脚本的执行管理方法,应用于中心服务器、服务节点和测试用终端,所述服务节点包括执行记录数据库、重试调度器和失败计数器,其特征在于,所述方法包括:
在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;
基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;
基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;
响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及
响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。
2.根据权利要求1所述的方法,其特征在于,响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数,具体包括:
响应于所述重试调度执行失败,将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中;
增加所述失败计数器中的失败次数;以及
响应于所述失败次数未达到所述最大重试次数,由重试调度器再次发起重试调度。
3.根据权利要求1或2所述的方法,其特征在于,在由所述重试调度器发起所述目标自动化脚本的重试调度之后,所述方法还包括:
若所述重试调度执行成功,清理所述失败计数器的进程;以及
将所述目标自动化脚本的执行情况保存到所述服务节点的执行记录数据库中。
4.根据权利要求3所述的方法,其特征在于,所述服务节点部署定时删除任务,所述定时删除任务用于按照预设的第一时间间隔删除所述执行记录数据库中的历史执行情况。
5.根据权利要求1或2或4所述的方法,其特征在于,所述中心服务器与多个服务节点建立1:N的管理模式,所述服务节点与多个测试用终端建立1:M的管理模式,其中,N、M均为正整数。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述中心服务器通过所述服务节点的唯一序列号进行与所述服务节点的通信;
所述服务节点通过所述测试用终端的唯一序列号进行与所述测试用终端的通信;以及
所述测试用终端为每个首次执行的自动化脚本分配唯一的随机序列号,在所述自动化脚本重试调度时持续使用相同的序列号并标记执行次数。
7.根据权利要求6所述的方法,其特征在于,所述执行情况包括执行成功或失败记录、服务节点序列号、测试用终端序列号、自动化脚本序列号、自动化脚本执行次数和失败原因,所述方法还包括:
所述中心服务器按照预设的第二时间间隔统计和分析所述执行情况,获取与所述服务节点序列号、所述测试用终端序列号、所述自动化脚本序列号和所述自动化脚本执行次数对应的失败原因分类和失败原因排序;以及
基于所述失败原因分类和所述失败原因排序,进行自动预警。
8.根据权利要求6所述的方法,其特征在于,所述最大重试次数基于***负载、资源配置和测试场景因素进行动态调整。
9.一种自动化脚本的执行管理装置,应用于中心服务器、服务节点和测试用终端,所述服务节点包括执行记录数据库、重试调度器和失败计数器,其特征在于,所述装置包括:
执行情况获取模块,用于:在所述测试用终端上执行目标自动化脚本,获取所述目标自动化脚本的执行情况;
请求类型获取模块,用于:基于所述执行情况,获取请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;
重试调度发起模块,用于:基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;
重试调度再次发起模块,用于:响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;以及
发送模块,用于:响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,利用所述服务节点将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器。
10.一种自动化脚本的执行管理***,其特征在于,所述***包括:
测试用终端,用于:执行目标自动化脚本,获取所述目标自动化脚本的执行情况;基于所述执行情况,发送请求类型,其中,所述请求类型包括所述目标自动化脚本的首次执行成功或首次执行失败;
服务节点,用于:基于首次执行失败:将所述执行情况保存到所述执行记录数据库中;唤醒所述失败计数器,记录失败次数;由所述重试调度器发起所述目标自动化脚本的重试调度;响应于所述重试调度执行失败,再次记录失败次数并再次发起重试调度,直到所述失败计数器达到预设的最大重试次数;响应于重试调度均执行失败,将所有执行情况保存到所述执行记录数据库中,并将所述执行记录数据库中保存的所有执行情况发送到所述中心服务器;以及
中心服务器,用于:按照预设的第二时间间隔统计和分析所述执行情况。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~8中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~8中任一项所述的方法。
13.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137631.1A CN117971674A (zh) | 2024-01-31 | 2024-01-31 | 自动化脚本的执行管理方法、装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137631.1A CN117971674A (zh) | 2024-01-31 | 2024-01-31 | 自动化脚本的执行管理方法、装置、电子设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117971674A true CN117971674A (zh) | 2024-05-03 |
Family
ID=90847446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410137631.1A Pending CN117971674A (zh) | 2024-01-31 | 2024-01-31 | 自动化脚本的执行管理方法、装置、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117971674A (zh) |
-
2024
- 2024-01-31 CN CN202410137631.1A patent/CN117971674A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11565734B2 (en) | Weak-current unified system for rail transit | |
EP3806432A1 (en) | Method for changing service on device and service changing system | |
US20210065083A1 (en) | Method for changing device business and business change system | |
CN114267178B (zh) | 一种车站的智能运营维护方法及装置 | |
CN112929187B (zh) | 网络切片管理方法、装置和*** | |
US20200117151A1 (en) | Outage and switch management for a power grid system | |
CN114064196A (zh) | 用于预测性保障的***和方法 | |
CN109245966A (zh) | 云平台的服务状态的监控方法和装置 | |
CN113946499A (zh) | 一种微服务链路跟踪及性能分析方法、***、设备及应用 | |
CN107943657A (zh) | 一种Linux***问题自动分析方法及*** | |
CN113448947B (zh) | 一种mongo数据库分布式部署运维的方法和装置 | |
CN116010190A (zh) | 一种esb服务监控管理***及方法 | |
CN117194154A (zh) | 一种基于微服务的apm全链路监控***及方法 | |
CN111324583B (zh) | 一种业务日志的分类方法及装置 | |
CN113760689A (zh) | 接口故障的报警方法、装置、设备及存储介质 | |
CN117971674A (zh) | 自动化脚本的执行管理方法、装置、电子设备和介质 | |
CN114090382B (zh) | 超融合集群健康巡检方法和装置 | |
CN106294067B (zh) | 一种基于p2p技术的虚拟化***自管理巡检方法 | |
CN115334560A (zh) | 基站异常的监测方法、装置、设备及计算机可读存储介质 | |
CN113190341B (zh) | 一种服务器资源调度方法及*** | |
CN112561409B (zh) | 一种遥感卫星地面接收***的故障评估方法及*** | |
CN113434278A (zh) | 数据聚合***、方法、电子设备及存储介质 | |
CN112579391A (zh) | 一种基于人工智能的分布式数据库自动运维方法及*** | |
WO2023103627A1 (zh) | 网络巡检的方法、装置、电子设备和存储介质 | |
WO2023051097A1 (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 |