CN111897725B - 中台服务自动化测试方法、介质、设备及系统 - Google Patents

中台服务自动化测试方法、介质、设备及系统 Download PDF

Info

Publication number
CN111897725B
CN111897725B CN202010718563.XA CN202010718563A CN111897725B CN 111897725 B CN111897725 B CN 111897725B CN 202010718563 A CN202010718563 A CN 202010718563A CN 111897725 B CN111897725 B CN 111897725B
Authority
CN
China
Prior art keywords
service
configuration information
services
test
execution chain
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.)
Active
Application number
CN202010718563.XA
Other languages
English (en)
Other versions
CN111897725A (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.)
Xiamen Airlines Co Ltd
Original Assignee
Xiamen Airlines 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 Xiamen Airlines Co Ltd filed Critical Xiamen Airlines Co Ltd
Priority to CN202010718563.XA priority Critical patent/CN111897725B/zh
Publication of CN111897725A publication Critical patent/CN111897725A/zh
Application granted granted Critical
Publication of CN111897725B publication Critical patent/CN111897725B/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/3668Software testing
    • G06F11/3672Test management
    • 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/3692Test management for test results analysis

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

中台服务自动化测试方法、介质、设备及系统
技术领域
本发明涉及自动化测试技术领域,特别涉及一种中台服务自动化测试方法、一种计算机可读存储介质、一种计算机设备以及一种中台服务自动化测试系统。
背景技术
中台是一套结合互联网技术和行业特性,将企业核心能力以共享服务中心进行沉淀,每个服务中心职责单一,专注于某个核心业务,将业务能力封装并对外提供服务,形成“大中台、小前台”的组织和业务机制,为前台等业务端提供平台级专业支持,达到多前台能力复用的目标,因此中台本身的测试和质量保障至关重要。
由于中台服务中心没有UI界面,且服务数量多,通常使用接口测试工具Postman对单个服务进行测试,待各业务前端渠道接入后,通过各业务前端渠道的功能测试完成对中台服务的间接关联测试,但此时测试链路长,测试粒度粗,质量控制较为滞后,无法直接对中台服务中心从用户的行为角度进行成体系的自动化测试。然而,借助自动化测试框架比如Cucumber,需要根据业务逻辑进行大规模契约信息的替换、拼接,来实现多个服务的级联调用,从而模拟相应业务场景的测试,这种测试方式需要编写大量的测试脚本,测试效率低,测试门槛高,测试用例评审困难。
发明内容
本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种中台服务自动化测试方法,能够从实际业务场景的角度实现对中台各服务中心进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
本发明的第二个目的在于提出一种计算机可读存储介质。
本发明的第三个目的在于提出一种计算机设备。
本发明的第四个目的在于提出一种中台服务自动化测试系统。
为达到上述目的,本发明第一方面实施例提出了一种中台服务自动化测试方法,包括以下步骤:获取业务信息,其中,业务信息包括业务场景对应的多个服务和业务逻辑;根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;根据服务执行链对中台服务进行自动化测试。
根据本发明实施例的中台服务自动化测试方法,首先获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;接着,根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;然后,根据所述服务执行链对中台服务进行自动化测试;这种方式天然解决了服务之间存在复杂的依赖性、相互调用的复杂性的问题,使得没有UI界面的中台服务功能测试变得高效、稳定、可视化,形成一套成体系的自动化测试解决方案。
另外,根据本发明上述实施例提出的中台服务自动化测试方法还可以具有如下附加的技术特征:
可选地,根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,包括:根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息配置信息生成服务执行链,其中,所述配置信息包括验证服务对应的结果期望值。
可选地,根据所述服务执行链对中台服务进行自动化测试,包括:根据所述服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;判断所述实际结果值和所述结果期望值是否相等,并在所述实际结果值与所述结果期望值不相等时,断言该业务场景可能存在缺陷。
可选地,所述契约信息包括服务名称、服务地址、Header、变量和Hooks。
为达到上述目的,本发明第二方面实施例提出了一种计算机可读存储介质,其上存储有中台服务自动化测试程序,该中台服务自动化测试程序被处理器执行时实现如上述的中台服务自动化测试方法。
根据本发明实施例的计算机可读存储介质,通过存储中台服务自动化测试程序,以使得处理器在执行该中台服务自动化测试程序时,实现如上述的中台服务自动化测试方法,从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为达到上述目的,本发明第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现如上述的中台服务自动化测试方法。
根据本发明实施例的计算机设备,通过存储器对中台服务自动化测试程序进行存储,以使得处理器在执行该中台服务自动化测试程序时,实现如上述的中台服务自动化测试方法,从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为达到上述目的,本发明第四方面实施例提出了一种中台服务自动化测试系统,包括:获取模块,所述获取模块用于获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;生成模块,所述生成模块用于根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;测试模块,所述测试模块用于根据所述服务执行链对中台服务进行自动化测试。
根据本发明实施例的中台服务自动化测试系统,通过设置获取模块用于获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;生成模块用于根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;测试模块用于根据所述服务执行链对中台服务进行自动化测试;从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
另外,根据本发明上述实施例提出的中台服务自动化测试系统还可以具有如下附加的技术特征:
可选地,根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,包括:根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链,其中,所述配置信息包括验证服务对应的结果期望值。
可选地,根据所述服务执行链对中台服务进行自动化测试,包括:根据所述服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;判断所述实际结果值和所述结果期望值是否相等,并在所述实际结果值与所述结果期望值不相等时,断言该业务场景可能存在缺陷。
可选地,所述契约信息包括服务名称、服务地址、Header、变量和Hooks。
附图说明
图1为根据本发明实施例的中台服务自动化测试方法的流程示意图;
图2为根据本发明实施例的中台服务自动化测试系统的方框示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
在自动化测试领域,测试用例的可维护性是极其重要的因素,直接关系到自动化测试能否持续有效地在项目中开展。传统的自动化测试,需要采用自动化测试框架手动编写大量的脚本,工作量大、门槛高、用例评审困难。在本实施例中,将服务契约定义、测试步骤、测试用例、测试用例集进行分层,直观的服务执行链、清晰的测试用例描述,极大的减少了测试用例的维护成本,使业务人员、开发人员和测试人员能在这个基础上达成一致,方便用例评审。
在一些实施例中,测试用例的设计基于BDD(行为驱动开发)的思想,从用户的使用场景出发,强调系统行为,模拟用户为了实现这些目标而采取的操作步骤为侧重点,通过左右拖拽服务契约组装测试用例、上下拖拽服务契约调整执行顺序、配置式的参数抽取实现服务契约的级联调用,随着中台的服务契约开发完成及模拟用户使用场景的服务执行链(测试用例)组装完成,后续根据所述服务执行链进行测试都已经自动化了,测试用例可以同步执行也可以异步执行,可以单个用例执行,也可以多个用例批量执行,提高测试的效率和质量。
根据本发明实施例的中台服务自动化测试方法,首先获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;接着,根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;然后,根据所述服务执行链对中台服务进行自动化测试;从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
图1为根据本发明实施例的中台服务自动化测试方法的流程示意图,如图1所示,该中台服务自动化测试方法包括以下步骤:
S101,获取业务信息,其中,业务信息包括业务场景对应的多个服务和业务逻辑。
即言,获取业务信息,该业务信息包括测试场景所需要使用的多个服务和该业务场景的业务逻辑。
S102,根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链。
即言,系统中维护有中台服务中心每个服务所对应的契约信息;进一步地,在获取到业务信息之后,根据该业务信息对应的业务场景所需要使用的多个服务获取每个服务对应的契约信息和配置信息;然后,根据业务逻辑确定该业务场景中多个服务的服务执行顺序,从而,可以根据配置信息获取服务之间的调用关系和依赖关系;接着,根据服务执行顺序、每个服务对应的契约信息和配置信息生成该服务场景对应的服务执行链。
作为一种示例,首先,系统中维护有中台服务中心每个服务所对应的契约信息,并将每个服务所对应的契约信息模块化,以生成每个服务对应的服务模块;接着,获取操作人员对于服务模块的选择指令(例如,通过获取操作人员的拖拽指令获取选择指令,或者,通过获取操作人员的点选指令获取选择指令等);以根据该选择指令确定该业务信息对应的业务场景需要使用哪些服务;然后,获取操作人员对于服务模块的排序指令(例如,通过获取操作人员的拖拽指令获取排序指令);以根据排序指令确定该业务信息中每个服务的排序(即多个服务的服务执行顺序);最后,获取操作人员对于服务模块的配置指令(例如,通过操作人员的对于每个参数的输入信息或操作人员对于服务之间的关联操作获取配置指令等);以根据配置指令确定该业务场景中多个服务的互相调用和依赖关系;进而,可以根据多个服务的服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,即言,形成用于该业务场景自动化测试的测试用例。
需要说明的是,在中台服务中,业务场景可以有多种。例如,在购票系统中,包含单程或往返等行程类型选择A、身份证或护照等证件类型选择B、成人或儿童等旅客类型选择C、提交订单D、支付E、查询订单F、改期G;则该购票系统所对应的业务场景可能包括:A1-B2-C1-D-E-F-G、A2-B1-C2-D-E-F-G、A1-B2-C2-D-E-F-G等多个业务场景。而上游的服务可能向下面的一个或多个服务传递参数,每个服务也可能从全局变量中获取公共参数,即言,服务之间可能存在多种调用关系或依赖关系。因此,为了便于本发明中台服务自动化测试方法对于每个业务场景所对应的服务执行链(测试用例)的管理,还可以为每个已完成组装的服务执行链添加直观的、简要的测试用例名称描述,并将该测试用例名称与该服务执行链进行关联存储;从而,可通过该测试用例名称对服务执行链进行管理及多方的用例评审;同时在存储后该服务执行链即测试用例可以得到复用,而无需每次在测试之前进行服务执行链的组装。
其中,契约信息可以包括的数据可以有多种。
作为一种示例,契约信息包括服务名称和服务地址。
作为另一种示例,契约信息包括服务名称、服务地址、Header、变量和Hooks。其中,Hooks可以包括用于在服务请求之前执行的方法,也可以包括用于在服务请求之后执行的方法。
在一些实施例中,根据服务执行顺序和每个服务对应的契约信息和配置信息生成服务执行链,包括:
根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链,其中,配置信息包括验证服务对应的结果期望值。
即言,根据业务逻辑对每个服务进行排序,然后,配置每个服务所对应的配置信息(例如,请求头部、请求参数、变量和参数抽取等);其中,该配置信息可以包括用于验证该服务执行链是否存在缺陷的验证服务所对应的结果期望值;接着,根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链。
需要说明的是,配置信息还可以包括实际测试的请求信息,例如,在购票场景中,该配置信息中包含了购票场景中的购票往返目的地信息、购票时间信息和成人或儿童选项信息等,以便在测试过程中,根据配置信息中的实际测试的请求信息对中台服务进行仿真测试。
进一步地,该配置信息还可以包括用于在整个服务执行链测试之前执行的方法,也可以包括用于在整个服务执行链测试之后执行的方法。此外,还可以包括用于在整个服务执行链中每个服务在请求之前执行的方法,也可以包括用于在整个服务执行链中每个服务在请求之后执行的方法。以便在测试过程中,可以灵活设置整个服务执行链及其中的每个服务在测试前,例如可以进行准备工作,在测试完成后,例如可以进行相应的数据清理工作。
其中,验证服务(断言)的选择可以有多种。
作为一种示例,选择服务执行链中的最后一个服务作为验证服务,并根据该验证服务的返回结果进行断言;从而根据验证服务返回的实际结果值和结果期望值是否一致来判断该服务执行链所测试的业务场景是否存在缺陷。
作为另一种示例,随机选择执行链中的一个或多个服务作为验证服务,并根据每个验证服务的返回结果进行断言;从而根据验证服务返回的实际结果值和结果期望值是否一致来判断该服务执行链所测试的业务场景是否存在缺陷。
作为又一种示例,将服务执行链中的每一个服务作为验证服务,并根据每个验证服务的返回结果进行断言;从而根据验证服务返回的实际结果值和结果期望值是否一致来判断该服务执行链所测试的业务场景是否存在缺陷。
S103,根据服务执行链对中台服务进行自动化测试。
在一些实施例中,根据服务执行链对中台服务进行自动化测试,包括:按照服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;判断实际结果值和结果期望值是否相等,并在实际结果值与结果期望值不相等时,断言该业务场景可能存在缺陷。
即言,根据服务执行链中的服务执行顺序对服务依次进行执行,并在执行过程中获取相应的返回结果;接着,根据其中验证服务返回的结果实际值和该验证服务对应的结果期望值是否一致来判断该服务执行链所测试的业务场景是否存在缺陷。
需要说明的是,为了便于操作人员对于测试结果的查看,还可以根据服务执行链的执行结果生成相应的可视化测试报告,并按执行顺序对每个服务的测试结果进行可视化呈现,便于操作人员对于测试结果的把控和对于缺陷的分析,特别是大量的服务执行链(测试用例)同时批量执行时,根据服务执行链的测试用例名称描述,可以直观的看出哪些业务场景的测试是执行成功的,哪些业务场景的测试是执行失败的。
需要说明的是,为了提高操作人员对于测试用例的执行灵活性,进一步提高中台服务的测试效率;本发明实施例提出的中台服务自动化测试方法还包括,首先,获取操作人员的执行集选择指令(即言,获取操作人员根据每个服务执行链(测试用例)的名称进行选择的指令),从而,可以根据该执行集选择指令获取当前测试任务所涉及的服务执行链(如果是该执行集选择指令只选中了一个服务执行链,则为单一服务执行链测试,如果该选择指令选中了多个服务执行链,即为批量执行,如果该选择指令选中了所有服务执行链,即为整体全量执行),通过执行集的灵活选择,可以组合出各种可能的业务场景集合,提高测试的效果;通过批量执行可以大量节约操作人员的操作时间,从而操作人员无需在一个服务执行链测试完毕之后再手动开启下一服务执行链的测试;然后,获取操作人员的执行方式选择指令(即言,在确定当前测试任务所涉及的服务执行链集合之后,可以进一步地选择该服务执行链集合的执行方式指令),如果是选择异步执行,则表示将当前测试任务将在后台执行,不会对操作人员的其他操作造成影响。
进一步地,为了方便操作人员对于中台服务的测试,本发明实施例提出的中台服务自动化测试方法还包括定时开启功能,即言,在确定当前测试任务所涉及的服务执行链集合后,可以获取固定的开启执行时间点(比如操作人员固定设置在凌晨1点)开始执行,进而,当判断本地时间达到开启时间,固定开启所选中的服务执行链集合的测试,执行完毕后通过邮件将测试报告自动发送给预先配置好的收件人。
需要说明的是,为了提高操作人员对于测试用例的执行灵活性,进一步提高中台服务的测试效率;本发明实施例提出的中台服务自动化测试方法还包括一键切换运行环境和环境变量功能,即言,进一步获取当前所选中的服务执行链集合对应的运行环境,指定是在中台测试环境运行、中台准生产环境运行还是在中台生产环境运行等,而不用逐一调整服务执行链中各个服务的服务地址;在获得对应的运行环境后,也将同步获取环境变量(与运行环境相关的全局变量),实现对所选中的服务执行链集合在不同运行环境下进行有目标的差异化测试(即言,相同的全局变量在不同的运行环境下所获得的取值是不一样的,实现与运行环境同步切换),进一步提升测试的灵活性。
综上所述,根据本发明实施例的中台服务自动化测试方法,首先获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;接着,根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;然后,根据所述服务执行链对中台服务进行自动化测试;从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为了实现上述实施例,本发明实施例提出了一种计算机可读存储介质,其上存储有中台服务自动化测试程序,该中台服务自动化测试程序被处理器执行时实现如上述的中台服务自动化测试方法。
根据本发明实施例的计算机可读存储介质,通过存储中台服务自动化测试程序,以使得处理器在执行该中台服务自动化测试程序时,实现如上述的中台服务自动化测试方法,从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为了实现上述实施例,本发明实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现如上述的中台服务自动化测试方法。
根据本发明实施例的计算机设备,通过存储器对中台服务自动化测试程序进行存储,以使得处理器在执行该中台服务自动化测试程序时,实现如上述的中台服务自动化测试方法,从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
为了实现上述实施例,本发明实施例提出了一种中台服务自动化测试系统,如图2所示,该中台服务自动化测试系统包括:获取模块10、生成模块20和测试模块30。
其中,获取模块10用于获取业务信息,其中,业务信息包括业务场景对应的多个服务和业务逻辑;
生成模块20用于根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;
测试模块30用于根据服务执行链对中台服务进行自动化测试。
在一些实施例中,根据服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,包括:
根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链,其中,配置信息包括验证服务对应的结果期望值。
在一些实施例中,根据服务执行链对中台服务进行自动化测试,包括:
根据服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;
判断实际结果值和结果期望值是否相等,并在实际结果值与结果期望值不相等时,断言该业务场景可能存在缺陷。
在一些实施例中,契约信息包括服务名称、服务地址、Header、变量和Hooks。
需要说明的是,上述关于图1中中台服务自动化测试方法的描述同样适用于该中台服务自动化测试系统,在此不做赘述。
综上所述,根据本发明实施例的中台服务自动化测试系统,通过设置获取模块用于获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;生成模块用于根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;测试模块用于根据所述服务执行链对中台服务进行自动化测试;从而实现对中台服务进行自动化测试,降低中台服务自动化测试过程中所需耗费的人力物力资源,提高中台服务自动化测试效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

1.一种中台服务自动化测试方法,其特征在于,包括以下步骤:
获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;
根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;
根据所述服务执行链对中台服务进行自动化测试。
2.如权利要求1所述的中台服务自动化测试方法,其特征在于,根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,包括:
根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链,其中,所述配置信息包括验证服务对应的结果期望值。
3.如权利要求2所述的中台服务自动化测试方法,其特征在于,根据所述服务执行链对中台服务进行自动化测试,包括:
根据所述服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;判断所述实际结果值和所述结果期望值是否相等,并在所述实际结果值与所述结果期望值不相等时,断言该业务场景可能存在缺陷。
4.如权利要求1所述的中台服务自动化测试方法,其特征在于,所述契约信息包括服务名称、服务地址、Header、变量和Hooks。
5.一种计算机可读存储介质,其特征在于,其上存储有中台服务自动化测试程序,该中台服务自动化测试程序被处理器执行时实现如权利要求1-4中任一项所述的中台服务自动化测试方法。
6.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时,实现如权利要求1-4中任一项所述的中台服务自动化测试方法。
7.一种中台服务自动化测试系统,其特征在于,包括:
获取模块,所述获取模块用于获取业务信息,其中,所述业务信息包括业务场景对应的多个服务和业务逻辑;
生成模块,所述生成模块用于根据业务场景对应的多个服务获取每个服务对应的契约信息和配置信息,并根据所述业务逻辑确定业务场景对应的多个服务的服务执行顺序,以及根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链;
测试模块,所述测试模块用于根据所述服务执行链对中台服务进行自动化测试。
8.如权利要求7所述的中台服务自动化测试系统,其特征在于,根据所述服务执行顺序、每个服务对应的契约信息和配置信息生成服务执行链,包括:
根据业务场景对应的业务逻辑对每个服务进行排序,并配置每个服务对应的配置信息,以及根据每个服务的排序、每个服务对应的契约信息和配置信息生成服务执行链,其中,所述配置信息包括验证服务对应的结果期望值。
9.如权利要求8所述的中台服务自动化测试系统,其特征在于,根据所述服务执行链对中台服务进行自动化测试,包括:
根据所述服务执行链进行多个服务的执行,并获取验证服务返回的实际结果值;判断所述实际结果值和所述结果期望值是否相等,并在所述实际结果值与所述结果期望值不相等时,断言该业务场景可能存在缺陷。
10.如权利要求8所述的中台服务自动化测试系统,其特征在于,所述契约信息包括服务名称、服务地址、Header、变量和Hooks。
CN202010718563.XA 2020-07-23 2020-07-23 中台服务自动化测试方法、介质、设备及系统 Active CN111897725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010718563.XA CN111897725B (zh) 2020-07-23 2020-07-23 中台服务自动化测试方法、介质、设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010718563.XA CN111897725B (zh) 2020-07-23 2020-07-23 中台服务自动化测试方法、介质、设备及系统

Publications (2)

Publication Number Publication Date
CN111897725A CN111897725A (zh) 2020-11-06
CN111897725B true CN111897725B (zh) 2022-09-02

Family

ID=73189763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010718563.XA Active CN111897725B (zh) 2020-07-23 2020-07-23 中台服务自动化测试方法、介质、设备及系统

Country Status (1)

Country Link
CN (1) CN111897725B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113762918A (zh) * 2021-08-03 2021-12-07 南京领行科技股份有限公司 一种业务逻辑执行方法、装置、设备及介质
CN114741307A (zh) * 2022-04-21 2022-07-12 北京达佳互联信息技术有限公司 用例执行方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150249A (zh) * 2011-12-07 2013-06-12 北京新媒传信科技有限公司 一种自动化测试的方法和系统
CN109840074A (zh) * 2017-11-24 2019-06-04 华为软件技术有限公司 一种业务生成方法、装置及网络设备
CN110232014A (zh) * 2019-02-25 2019-09-13 上海蔚来汽车有限公司 业务流程自动化测试方法、装置、控制器及介质
CN110888800A (zh) * 2019-10-18 2020-03-17 平安普惠企业管理有限公司 服务交互功能的测试方法、装置、存储介质及测试系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9977821B2 (en) * 2014-11-26 2018-05-22 Wipro Limited Method and system for automatically generating a test artifact

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150249A (zh) * 2011-12-07 2013-06-12 北京新媒传信科技有限公司 一种自动化测试的方法和系统
CN109840074A (zh) * 2017-11-24 2019-06-04 华为软件技术有限公司 一种业务生成方法、装置及网络设备
CN110232014A (zh) * 2019-02-25 2019-09-13 上海蔚来汽车有限公司 业务流程自动化测试方法、装置、控制器及介质
CN110888800A (zh) * 2019-10-18 2020-03-17 平安普惠企业管理有限公司 服务交互功能的测试方法、装置、存储介质及测试系统

Also Published As

Publication number Publication date
CN111897725A (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
CN106708719B (zh) 业务功能的测试方法和装置
US7895565B1 (en) Integrated system and method for validating the functionality and performance of software applications
CN109857668A (zh) Ui自动化功能测试方法、测试装置、测试设备及存储介质
JP6045134B2 (ja) アプリケーション性能試験のための並列作業負荷シミュレーション
CN110347395A (zh) 基于云计算平台的软件发布方法及装置
CN107943707B (zh) 行为树的测试方法、装置和存储介质以及终端
Ahmad et al. A systematic mapping study of empirical studies on software cloud testing methods
CN111897725B (zh) 中台服务自动化测试方法、介质、设备及系统
CN110569159A (zh) 挡板生成方法、装置、设备及计算机存储介质
da Silveira et al. Generation of scripts for perfomance testing based on UML models
CN111966597B (zh) 测试数据生成方法及装置
CN112799782A (zh) 模型生成系统、方法、电子设备及存储介质
Krishna et al. Rigorous design and deployment of IoT applications
Dias-Neto et al. Supporting the combined selection of model-based testing techniques
CN110888800A (zh) 服务交互功能的测试方法、装置、存储介质及测试系统
CN113592439A (zh) 软件项目流程管理系统及方法
CN110597728A (zh) 构建测试数据的方法、装置及系统
CN116523244A (zh) 一种基于外包资源的测试人力风险预警方法
CN115687054A (zh) 基于业务分割还原的自适应测试方法以及装置
CN112306873A (zh) 上线流程管理方法、装置和电子设备
CN111651349B (zh) 一种测试方法和装置
CN111562982B (zh) 请求数据的处理方法及装置、计算机可读存储介质、电子设备
CN111488283B (zh) 任务生成方法、装置、电子设备及存储介质
CN116069640A (zh) 一种基于流程图的自动化测试方法
Hamad et al. Scalable Quality and Testing Lab (SQTL): Mission-Critical Applications Testing

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