CN113535538B - 应用全链路自动化测试方法、装置、电子设备和存储介质 - Google Patents
应用全链路自动化测试方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113535538B CN113535538B CN202010318455.3A CN202010318455A CN113535538B CN 113535538 B CN113535538 B CN 113535538B CN 202010318455 A CN202010318455 A CN 202010318455A CN 113535538 B CN113535538 B CN 113535538B
- Authority
- CN
- China
- Prior art keywords
- application
- test
- case
- tested
- response data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请提出一种应用全链路自动化测试方法、装置、电子设备和存储介质,其中,方法包括:从案例库中获取目标测试案例,确定与目标测试案例相对应的案例标识、处理机构标识和接口信息;基于接口信息向待测试应用发起测试请求;在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,根据案例标识、处理机构标识和接口信息在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果;获取并保存执行结果。解决现有技术中测试效率比较低,响应处理结果不准确的问题,有效提高了测试效率和准确性。
Description
技术领域
本申请涉及自动化测试技术领域,尤其涉及一种应用全链路自动化测试方法、装置、电子设备和存储介质。
背景技术
通常,自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。相关技术中,如图1所示,测试人员根据测试案例编写自动化测试脚本发起自动化测试。同时,待测试应用从下游模拟服务获取到的响应处理结果,也需要测试人员手动编写。
上述方式中,由于人工编写来进行测试可能导致应用测试效率比较低,响应处理结果不准确等问题。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请提出一种应用全链路自动化测试方法,解决了现有技术中应用测试效率比较低,响应处理结果不准确的问题,通过从案例库中获取测试案例,基于测试案例对应的接口信息向待测试应用发起测试请求,在待测试应用执行测试请求的过程中,可以基于测试案例的案例标识、处理机构标识和接口信息直接查询试案例相对应的模拟响应数据,最后待测试应用基于模拟响应数据生成执行结果并保存,提高测试效率和准确性。
本申请提出一种应用全链路自动化测试装置。
本申请提出一种电子设备。
本申请提出一种计算机可读存储介质。
本申请一方面实施例提出了一种应用全链路自动化测试方法,包括:
从案例库中获取目标测试案例,并确定与所述目标测试案例相对应的请求参数,所述请求参数包括:所述目标测试案例的案例标识、处理机构标识和接口信息;
基于所述接口信息向待测试应用发起测试请求;
在所述待测试应用执行所述测试请求的过程中,如果所述待测试应用需要获取处理机构返回的响应数据,则根据所述案例标识、所述处理机构标识和所述接口信息,在模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并返回至所述待测试应用,以使所述待测试应用基于所述模拟响应数据生成执行结果;
获取并保存所述执行结果。
本申请另一方面实施例提出了一种应用全链路自动化测试装置,包括:
第一获取模块,用于从案例库中获取目标测试案例,并确定与所述目标测试案例相对应的请求参数,所述请求参数包括:所述目标测试案例的案例标识、处理机构标识和接口信息;
测试发起模块,用于基于所述接口信息向待测试应用发起测试请求;
服务模拟模块,用于在所述待测试应用执行所述测试请求的过程中,如果所述待测试应用需要获取处理机构返回的响应数据,则根据所述案例标识、所述处理机构标识和所述接口信息,在模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并返回至所述待测试应用,以使所述待测试应用基于所述模拟响应数据生成执行结果;
第二获取模块,用于获取并保存所述执行结果。
本申请又一方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述一方面实施例所述的应用全链路自动化测试方法。
本申请又一方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现前述方法实施例所述的应用全链路自动化测试方法。
本申请实施例所提供的技术方案可以包含如下的有益效果:
通过从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,请求参数包括:目标测试案例的案例标识、处理机构标识和接口信息;基于接口信息向待测试应用发起测试请求;在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据案例标识、处理机构标识和接口信息,在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果;获取并保存执行结果。由此,解决了现有技术中应用测试效率比较低,响应处理结果不准确的问题,通过从案例库中获取测试案例,基于测试案例对应的接口信息向待测试应用发起测试请求,在待测试应用执行测试请求的过程中,可以基于测试案例的案例标识、处理机构标识和接口信息直接查询试案例相对应的模拟响应数据,最后待测试应用基于模拟响应数据生成执行结果并保存,提高测试效率和准确性。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例所提供的一种自动化测试的示例图;
图2为本申请实施例所提供的一种应用全链路自动化测试方法的流程示意图;
图3为本申请实施例所提供的另一种应用测全链路自动化试方法的流程示意图;
图4为本申请实施例所提供的一种日志采集方法的示例图;
图5为本申请实施例提供的一种应用全链路自动化测试方法的示例图;
图6为本申请实施例提供的一种应用全链路自动化测试结果对比的示例图;
图7为本申请实施例提供的另一种应用全链路自动化测试方法的示例图;
图8为本申请实施例提供的一种应用全链路自动化测试装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的应用全链路自动化测试方法、装置、电子设备和存储介质。
图2为本申请实施例所提供的一种应用全链路自动化测试方法的流程示意图。
如图2所示,该方法包括以下步骤:
步骤101,从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,请求参数包括:目标测试案例的案例标识、处理机构标识和接口信息。
步骤103,基于接口信息向待测试应用发起测试请求。
在本申请实施例中,可以通过模拟待测试应用的调用方发起测试请求,从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,其中,请求参数可以包括;目标测试案例的案例标识、处理机构标识、接口信息、交易金额、交易账号标识和交易处理等中的一种或者多种。
进一步地,基于接口信息向待测试应用发起测试请求,可以理解的是,不同的接口信息向待测试应用发起的测试请求也不同,作为一种可能实现方式,接口信息包括接口名称、接口版本号和接口请求报文类型等中的一种或者多种,根据接口名称和接口版本号确定待测试应用,向待测试应用发起与接口请求报文类型对应的测试请求,也就是说,不同的待测试应用对应的接口名称和接口版本号不同,接口名称和接口版本号能够确定唯一待测试应用。
需要说明的是,本申请中待测试应用为清算机构中的各个应用,因此调用方主要模拟支付机构、账户机构等。
可以理解的是,案例库是预先生成的,存储着不同维度大量测试测试案例,作为一种可能实现方式,通过日志采集工具采集多个目标日志数据,按照预设格式对多个目标日志数据进行处理生成多个目标格式数据,按照预设维度和规则对多个目标格式数据进行清洗处理,生成各个案例标识对应的测试案例并保存在案例库中,由此,实现联调环境及其他预发布环境的日志中采集清洗日志数据,快速生成大量测试案例,提高测试案例覆盖率。
举例而言,目标测试案例为从支付机构支付金额为5的交易,从而确定请求参数包括:目标测试案例的案例标识比如编号1、处理机构标识、接口信息、交易金额、交易账号标识和交易处理等,由此,基于接口信息向待测试应用发起请求处理支付金额为5的测试请求。
步骤105,在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据案例标识、处理机构标识和接口信息,在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果。
步骤107,获取并保存执行结果。
具体地,在基于接口信息向待测试应用发起测试请求之后,在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据案例标识和接口信息,在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据。
作为一种可能实现方式,根据处理机构标识确定模拟响应数据库,根据案例标识在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并基于接口信息返回至待测试应用。
也就是说,根据处理机构标识确定处理机构比如为账户机构等,根据接口信息确定目标接口,通过目标接口将测试请求输入待测试应用转发至处理机构,其中,处理机构可以根据配置的接口信息(接口名称、接口版本号,接口请求报文类型及响应报文类型等)自动对外发布接口服务,并根据执行规则模拟正常服务的响应,在接收到测试请求后根据目标测试案例的案例标识按照预设做出正常响应或者异常响应。
因此,处理机构根据测试请求得到目标测试案例的案例标识,并根据目标测试案例的案例标识从模拟响应数据库中获取模拟响应数据返回至待测试应用。
可以理解的是,模拟响应数据库中预先生成的,作为一种可能实现方式,通过日志采集工具采集多个目标日志数据,按照预设格式对多个目标日志数据进行处理生成多个目标格式数据,按照预设维度和规则对多个目标格式数据进行清洗处理,生成与各个案例标识对应的模拟响应数据并按照案例标识存储在模拟响应数据库中。
从而,待测试应用基于模拟响应数据生成执行结果,获取并保存执行结果。
需要说明的是,本申请目标测试案例可以是一个或者多个,即可以多次执行步骤101-104,获取接口信息,按照编排完毕的接口顺序依次触发接口调用,并保存接口的响应及请求数据。
本申请实施例的应用全链路自动化测试方法中,通过从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,请求参数包括:目标测试案例的案例标识、处理机构标识和接口信息;基于接口信息向待测试应用发起测试请求;在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据案例标识、处理机构标识和接口信息,在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果;获取并保存执行结果。由此,解决了现有技术中应用测试效率比较低,响应处理结果不准确的问题,通过从案例库中获取测试案例,基于测试案例对应的接口信息向待测试应用发起测试请求,在待测试应用执行测试请求的过程中,可以基于测试案例的案例标识、处理机构标识和接口信息直接查询试案例相对应的模拟响应数据,最后待测试应用基于模拟响应数据生成执行结果并保存,提高测试效率和准确性。
基于上述实施例的描述,在获取并保存执行结果之后,为了进一步确定待测试应用的测试结果,还可以包括:从标杆库中获取与目标测试案例相对应的标准响应数据,根据执行结果和标准响应数据进行分析对比,确定待测试应用的测试结果。
其中,标杆库是预先生成的,作为一种示例,通过日志采集工具采集多个目标日志数据,按照预设格式对多个目标日志数据进行处理生成多个目标格式数据,按照预设维度和规则对多个目标格式数据进行清洗处理,生成与各个案例标识对应的标准响应数据并按照案例标识存储在标杆库中。
其中,根据执行结果和标准响应数据进行分析对比,确定待测试应用的测试结果有很多种,作为一种示例,判断执行结果和标准响应数据是否一致,若执行结果和标准响应数据一致,则确定待测试应用为正常响应,若执行结果和标准响应数据不一致,则确定待测试应用为异常响应。
继续以上述例子为例,目标测试案例为从支付机构支付金额为5的交易,请求参数包括目标测试案例的案例标识为编号01、账户机构XX银行、交易金额5、交易账号0001和交易处理扣款等,接着根据请求参数发起测试请求,处理机构即账户机构根据目标测试案例的编号01从模拟响应数据库中获取交易流水账号1010和交易处理结果扣款成功等模拟响应数据,待测试应用根据交易流水账号1010和交易处理结果扣款成功等模拟响应数据生成执行结果为成功支付金额5,并与标杆库中获取与目标测试案例对应的标准响应数据比如为成功支付金额5,则确定待测试应用为正常响应。
由此,通过从案例库中获取测试案例,并经过各个测试装置进行自动化测试,提高测试效率和准确性。
为了实现上述实施例,本实施例提供了另一种应用全链路自动化测试方法,图3为本申请实施例所提供的另一种应用全链路自动化测试方法的流程示意图。
如图3所示,该方法可以包括以下步骤:
步骤201,通过日志采集工具采集多个目标日志数据,按照预设格式对多个目标日志数据进行处理生成多个目标格式数据。
步骤203,按照预设维度和预设规则对多个目标格式数据进行清洗处理,并生成与各个案例标识对应的测试案例、模拟响应数据和标准响应数据。
步骤205,按照案例标识将测试案例存储至案例库,将模拟响应数据存储至模拟响应数据库,以及将与测试案例相对应的标准响应数据存储至标杆库。
在实际应用中,每天都在进行大量的交易处理,这些交易处理的具体数据都保存在日志中,可以根据需要通过日志采集工具采集多个目标日志数据,为了后续处理需要可以按照预设格式对多个目标日志数据进行处理生成多个目标格式数据,接着按照预设维度和规则对多个目标格式数据进行清洗处理,生成各个案例标识对应的测试案例、模拟响应数据和标准响应数据。
其中,预设维度比如为支付机构-清算机构-账户机构,或者是支付出错时支付机构-系统,都可以根据需要进行划分处理,预设规则可以理解为数据脱敏及某些数据再加工等规则。
因此,可以通过多个目标格式数据指定多维度创造大量测试案例、模拟响应数据和标准响应数据按照案例标识分别存储在案例库、模拟响应数据库和标杆库。
具体地,如图4所示,日志采集工具针对输入的日志文件进行采集有效日志,并且按照指定维度清洗数据,得到大量测试案例、模拟响应数据和标准响应数据按照案例标识分别存储在案例库、模拟响应数据库(mock库)和标杆库。
由此,通过日志采集提高了采集案例的效率,增加了案例的覆盖率,更加贴合生产环境出现的异常。
步骤207,从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,请求参数包括:目标测试案例的案例标识、处理机构标识和接口信息,基于接口信息向待测试应用发起测试请求。
步骤209,在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据处理机构标识确定模拟响应数据库,根据案例标识在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并基于接口信息返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果。
具体地,在需要发起自动化测试时,若从案例库获取目标测试案例。
更具体地,如图5所示,通过测试发起装置从案例库获取目标测试案例,交易发起工具根据目标测试案例组织请求参数并发起请求,在待测应用处理请求时,将目标案例的案例标识透传至处理机构,根据目标案例的案例标识查找对应的模拟响应数据库,模拟响应数据库返回查询到的模拟响应数据,处理机构将模拟响应数据返回至待测试应用,待测试应用根据模拟响应数据生成执行结果,并将本次的执行结果返回至测试发起装置,测试发起装置将执行结果保存至回执数据库。其中,不同的处理机构标识对应不用的处理机构,比如账户机构、支付机构等,其对应的模拟响应数据库也不同。
步骤2011,判断执行结果和标准响应数据是否一致,若执行结果和标准响应数据一致,则确定待测试应用为正常响应,若执行结果和标准响应数据不一致,则确定待测试应用为异常响应。
步骤2013,将测试结果保存至对比结果数据库。
具体地,为了验证接口的执行结果与标准响应数据是否一致,若一致,则表示接口符合预期,否则表示案例执行失败,需要相关人员介入查验问题。
比如图6所示,通过数据对比工具可以将图5中的发起方回执库中的执行结果和标杆库中的标准响应数据进行比对作为测试结果,即对比两者中报文的数据结构及数值数据是否一致,并将测试结果保存至对比结果数据库。
本申请实施例的应用全链路自动化测试方法中,通过日志采集工具采集多个日志数据,按照预设格式对多个日志数据进行处理生成多个目标格式数据,按照预设维度和规则对多个目标格式数据进行清洗处理,生成与各个案例标识对应的测试案例、模拟响应数据和标准响应数据,将按照案例标识测试案例存储至案例库,将模拟响应数据存储至模拟响应数据库,以及将标准响应数据存储至标杆库;从案例库中获取目标测试案例,确定与目标测试案例相对应的案例标识、处理机构标识和接口信息;基于接口信息向待测试应用发起测试请求;在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,根据案例标识、处理机构标识和接口信息在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果;从标杆库中获取与目标测试案例对应的标准响应数据,判断执行结果和标准响应数据是否一致,若执行结果和标准响应数据一致,则确定待测试应用为正常响应,若执行结果和标准响应数据不一致,则确定待测试应用为异常响应,将测试结果保存至预设对比结果数据库。由此,解决了现有技术中应用测试不够全面,测试案例数据量少,覆盖率低,测试效率低的问题,通过采集多个目标日志数据并按照预设维度和预设规则进行处理生成与各个案例标识对应的测试案例、模拟响应数据和标准响应数据,从案例库中获取测试案例,基于测试案例对应的接口信息向待测试应用发起测试请求,在待测试应用执行测试请求的过程中,可以基于测试案例的案例标识、处理机构标识和接口信息直接查询试案例相对应的模拟响应数据,最后待测试应用基于模拟响应数据生成执行结果并保存,提高测试效率、准确性和测试案例覆盖率。
为了本领域人员更加清楚上述过程,下面结合图7进行详细描述,如图7所示,发起方比如支付机构,进行实时交易,通过清算机构转发至接收方比如账户机构,进行处理,并将处理结果经过清算机构转发至发起方,这些实时交易都进行实时存储,并保存对应的交易日志,通过采集日志数据,并进行清洗将各个数据分别按照案例标识存储至案例库、标杆库和模拟响应数据库(MOCK库),在进行应用自动化测试时,从案例库中获取目标测试案例发起测试请求,模拟实时交易,模拟服务模拟接收方,根据目标测试案例的案例标识从模拟响应数据库中获取模拟响应数据,待测试应用根据模拟响应数据生成执行结果保存并保存,并通过标杆库获取标准响应数据与执行结果进行比对生成测试结果保存至对比结果库中。
由此,解决了现有技术中无法按照维度自动采集案例,处理机构需要定制化开发,模拟发起方装置及数据对比工具需要定制化开发,本申请通过使用的基于日志的采集工具、模拟发起方装置、处理机构及数据对比工具,而案例数据来源于测试或联调环境的日志,可快速及自动化产生大量案例,处理机构为通用服务,仅需要配置即可实现相关接口的自动发布,无需定制化开发,交易发起方装置仅需配置接口信息及接口服务编排,无需开发相关调用逻辑即可实现接口调用,使用规则处理引擎模拟接口处理逻辑,提高测试效率。
为了实现上述实施例,本申请还提出一种应用全链路自动化测试装置。图8为本申请实施例提供的一种应用全链路自动化测试装置的结构示意图。
如图8所示,该装置包括:第一获取模块801、测试发起模块803、服务模拟模块805和第二获取模块807。
第一获取模块801,用于从案例库中获取目标测试案例,并确定与所述目标测试案例相对应的请求参数,所述请求参数包括:所述目标测试案例的案例标识、处理机构标识和接口信息。
测试发起模块803,用于基于所述接口信息向待测试应用发起测试请求。
服务模拟模块805,用于在所述待测试应用执行所述测试请求的过程中,如果所述待测试应用需要获取处理机构返回的响应数据,则根据所述案例标识、处理机构标识和所述接口信息,在模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并返回至所述待测试应用,以使所述待测试应用基于所述模拟响应数据生成执行结果。
第二获取模块807,用于获取并保存所述执行结果。
进一步地,在本申请实施例的一种可能的实现方式中,所述接口信息包括:接口名称、接口版本号和接口请求报文类型;测试发起模块803,具体用于:据所述接口名称和所述接口版本号确定所述待测试应用;向所述待测试应用发起与所述接口请求报文类型对应的测试请求。
进一步地,在本申请实施例的一种可能的实现方式中,服务模拟模块805,具体用于:根据所述处理机构标识确定所述模拟响应数据库;根据所述案例标识在所述模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并基于所述接口信息返回至所述待测试应用。
进一步地,在本申请实施例的一种可能的实现方式中,在所述获取并保存所述执行结果之后,还包括:从标杆库中获取与所述目标测试案例相对应的标准响应数据;根据所述执行结果和所述标准响应数据进行分析对比,确定所述待测试应用的测试结果。
进一步地,在本申请实施例的一种可能的实现方式中,在所述从案例库中获取目标测试案例之前,还包括:通过日志采集工具采集多个目标日志数据;按照预设格式对所述多个目标日志数据进行处理,并生成多个目标格式数据;按照预设维度和预设规则对所述多个目标格式数据进行清洗处理,生成与各个案例标识对应的测试案例、模拟响应数据和标准响应数据;按照案例标识将所述测试案例存储至所述案例库,将所述模拟响应数据存储至所述模拟响应数据库,以及所述测试案例相对应的标准响应数据存储至所述标杆库。
进一步地,在本申请实施例的一种可能的实现方式中,根据所述执行结果和所述标准响应数据分析对比确定所述待测试应用的测试结果,包括:判断所述执行结果和所述标准响应数据是否一致;若所述执行结果和所述标准响应数据一致,则确定所述待测试应用为正常响应;若所述执行结果和所述标准响应数据不一致,则确定所述待测试应用为异常响应。
进一步地,在本申请实施例的一种可能的实现方式中,在所述根据所述执行结果和所述标准响应数据分析对比确定所述待测试应用的测试结果之后,还包括:将所述测试结果保存至对比结果数据库。
需要说明的是,前述对方法实施例的解释说明也适用于该实施例的装置,此处不再赘述。
通过从案例库中获取目标测试案例,并确定与目标测试案例相对应的请求参数,请求参数包括:目标测试案例的案例标识、处理机构标识和接口信息;基于接口信息向待测试应用发起测试请求;在待测试应用执行测试请求的过程中,如果待测试应用需要获取处理机构返回的响应数据,则根据案例标识、处理机构标识和接口信息,在模拟响应数据库中查询与目标测试案例相对应的模拟响应数据,并返回至待测试应用,以使待测试应用基于模拟响应数据生成执行结果;获取并保存执行结果。由此,解决了现有技术中应用测试效率比较低,响应处理结果不准确的问题,通过从案例库中获取测试案例,基于测试案例对应的接口信息向待测试应用发起测试请求,在待测试应用执行测试请求的过程中,可以基于测试案例的案例标识、处理机构标识和接口信息直接查询试案例相对应的模拟响应数据,最后待测试应用基于模拟响应数据生成执行结果并保存,提高测试效率和准确性。
为了实现上述实施例,本申请实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述终端设备执行方法实施例所述的应用全链路自动化测试方法。
为了实现上述实施例,本申请实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现前述方法实施例所述的应用全链路自动化测试方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (9)
1.一种应用全链路自动化测试方法,其特征在于,所述方法包括以下步骤:
从案例库中获取目标测试案例,并确定与所述目标测试案例相对应的请求参数,所述请求参数包括:所述目标测试案例的案例标识、处理机构标识和接口信息;
基于所述接口信息向待测试应用发起测试请求;
在所述待测试应用执行所述测试请求的过程中,如果所述待测试应用需要获取处理机构返回的响应数据,则根据所述处理机构标识确定模拟响应数据库;根据所述案例标识在所述模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并基于所述接口信息返回至所述待测试应用,以使所述待测试应用基于所述模拟响应数据生成执行结果;
获取并保存所述执行结果。
2.如权利要求1所述的方法,其特征在于,所述接口信息包括:接口名称、接口版本号和接口请求报文类型;
所述基于所述接口信息向待测试应用发起测试请求,包括:
根据所述接口名称和所述接口版本号确定所述待测试应用;
向所述待测试应用发起与所述接口请求报文类型对应的测试请求。
3.如权利要求1所述的方法,其特征在于,在所述获取并保存所述执行结果之后,还包括:
从标杆库中获取与所述目标测试案例相对应的标准响应数据;
根据所述执行结果和所述标准响应数据进行分析对比,确定所述待测试应用的测试结果。
4.如权利要求3所述的方法,其特征在于,根据所述执行结果和所述标准响应数据分析对比确定所述待测试应用的测试结果,包括:
判断所述执行结果和所述标准响应数据是否一致;
若所述执行结果和所述标准响应数据一致,则确定所述待测试应用为正常响应;
若所述执行结果和所述标准响应数据不一致,则确定所述待测试应用为异常响应。
5.如权利要求3所述的方法,其特征在于,在所述根据所述执行结果和所述标准响应数据分析对比确定所述待测试应用的测试结果之后,还包括:
将所述测试结果保存至对比结果数据库。
6.如权利要求3-5之任一所述的方法,其特征在于,在所述从案例库中获取目标测试案例之前,还包括:
通过日志采集工具采集多个目标日志数据;
按照预设格式对所述多个目标日志数据进行处理,并生成多个目标格式数据;
按照预设维度和预设规则对所述多个目标格式数据进行清洗处理,生成与各个案例标识对应的测试案例、模拟响应数据和标准响应数据;
按照案例标识将所述测试案例存储至所述案例库,将所述模拟响应数据存储至所述模拟响应数据库,以及所述测试案例相对应的标准响应数据存储至所述标杆库。
7.一种应用全链路自动化测试装置,其特征在于,所述装置包括:
第一获取模块,用于从案例库中获取目标测试案例,并确定与所述目标测试案例相对应的请求参数,所述请求参数包括:所述目标测试案例的案例标识、处理机构标识和接口信息;
测试发起模块,用于基于所述接口信息向待测试应用发起测试请求;
服务模拟模块,用于在所述待测试应用执行所述测试请求的过程中,如果所述待测试应用需要获取处理机构返回的响应数据,则根据所述处理机构标识确定模拟响应数据库;根据所述案例标识在所述模拟响应数据库中查询与所述目标测试案例相对应的模拟响应数据,并基于所述接口信息返回至所述待测试应用,以使所述待测试应用基于所述模拟响应数据生成执行结果;
第二获取模块,用于获取并保存所述执行结果。
8.一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-6任一项所述的应用全链路自动化测试方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一项所述的应用全链路自动化测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010318455.3A CN113535538B (zh) | 2020-04-21 | 2020-04-21 | 应用全链路自动化测试方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010318455.3A CN113535538B (zh) | 2020-04-21 | 2020-04-21 | 应用全链路自动化测试方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535538A CN113535538A (zh) | 2021-10-22 |
CN113535538B true CN113535538B (zh) | 2023-06-16 |
Family
ID=78093942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010318455.3A Active CN113535538B (zh) | 2020-04-21 | 2020-04-21 | 应用全链路自动化测试方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535538B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102874B (zh) * | 2022-06-27 | 2024-03-08 | 中国工商银行股份有限公司 | 网关系统性能的测试方法及其装置、电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101377759A (zh) * | 2008-08-26 | 2009-03-04 | 中国工商银行股份有限公司 | 自动化界面测试系统 |
CN106021090A (zh) * | 2016-05-04 | 2016-10-12 | 上海瀚银信息技术有限公司 | 一种软件接口测试系统及方法 |
CN106970873A (zh) * | 2017-01-10 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 线上mock测试方法、装置及系统 |
CN108563567A (zh) * | 2018-04-09 | 2018-09-21 | 平安普惠企业管理有限公司 | 自动化测试方法、装置、设备及计算机可读存储介质 |
CN109446071A (zh) * | 2018-09-26 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 接口测试方法、接口测试装置、电子设备及存储介质 |
CN109614322A (zh) * | 2018-11-28 | 2019-04-12 | 北京京东金融科技控股有限公司 | 基于Mock的单元测试方法、装置、设备及可读存储介质 |
CN109634837A (zh) * | 2018-10-23 | 2019-04-16 | 平安科技(深圳)有限公司 | 自动化测试方法、装置、设备及存储介质 |
CN109885499A (zh) * | 2019-02-27 | 2019-06-14 | 弗徕威智能机器人科技(上海)有限公司 | 一种机器人自动化测试系统及测试方法 |
CN109947646A (zh) * | 2019-03-13 | 2019-06-28 | 平安信托有限责任公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN110188036A (zh) * | 2019-05-10 | 2019-08-30 | 深圳前海微众银行股份有限公司 | 一种软件测试方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10572373B2 (en) * | 2017-04-20 | 2020-02-25 | International Business Machines Corporation | Automated test generation for multi-interface and multi-platform enterprise virtualization management environment |
-
2020
- 2020-04-21 CN CN202010318455.3A patent/CN113535538B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101377759A (zh) * | 2008-08-26 | 2009-03-04 | 中国工商银行股份有限公司 | 自动化界面测试系统 |
CN106021090A (zh) * | 2016-05-04 | 2016-10-12 | 上海瀚银信息技术有限公司 | 一种软件接口测试系统及方法 |
CN106970873A (zh) * | 2017-01-10 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 线上mock测试方法、装置及系统 |
CN108563567A (zh) * | 2018-04-09 | 2018-09-21 | 平安普惠企业管理有限公司 | 自动化测试方法、装置、设备及计算机可读存储介质 |
CN109446071A (zh) * | 2018-09-26 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 接口测试方法、接口测试装置、电子设备及存储介质 |
CN109634837A (zh) * | 2018-10-23 | 2019-04-16 | 平安科技(深圳)有限公司 | 自动化测试方法、装置、设备及存储介质 |
CN109614322A (zh) * | 2018-11-28 | 2019-04-12 | 北京京东金融科技控股有限公司 | 基于Mock的单元测试方法、装置、设备及可读存储介质 |
CN109885499A (zh) * | 2019-02-27 | 2019-06-14 | 弗徕威智能机器人科技(上海)有限公司 | 一种机器人自动化测试系统及测试方法 |
CN109947646A (zh) * | 2019-03-13 | 2019-06-28 | 平安信托有限责任公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN110188036A (zh) * | 2019-05-10 | 2019-08-30 | 深圳前海微众银行股份有限公司 | 一种软件测试方法及装置 |
Non-Patent Citations (1)
Title |
---|
Android应用软件自动化测试平台的设计和实现;祝阳阳;《中国优秀硕士学位论文全文数据库 信息科技辑》;I138-1082 * |
Also Published As
Publication number | Publication date |
---|---|
CN113535538A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106254093B (zh) | 一种自动化测试修复方法及其系统 | |
CN107080945B (zh) | 测试游戏中人工智能行为的方法、装置及电子设备 | |
CN109543417B (zh) | 一种基于Qemu平台的漏洞挖掘方法和装置 | |
CN112328499A (zh) | 一种测试数据生成方法、装置、设备及介质 | |
CN113535538B (zh) | 应用全链路自动化测试方法、装置、电子设备和存储介质 | |
CN110765007A (zh) | 一种面向安卓应用的崩溃信息线上分析方法 | |
CN113297060A (zh) | 一种数据测试方法及其装置 | |
CN111767218B (zh) | 一种用于持续集成的自动化测试方法、设备及存储介质 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN112685316A (zh) | 代码执行路径的获取方法、装置、计算机设备及存储介质 | |
CN115794639B (zh) | 基于流程的可视化测试及可视化仿真模拟测试系统和方法 | |
CN111708712A (zh) | 用户行为测试用例的生成方法、流量回放方法及电子设备 | |
CN116016270A (zh) | 一种交换机测试管理方法、装置、电子设备和存储介质 | |
CN109542496B (zh) | 增量代码确定方法、装置及系统 | |
CN116738091A (zh) | 页面监控方法、装置、电子设备及存储介质 | |
CN116662197A (zh) | 一种接口自动化测试方法、系统、计算机和可读存储介质 | |
CN116527553A (zh) | 一种交换机自动化测试报告的处理方法、系统及存储介质 | |
CN115373929A (zh) | 测试方法、装置、设备、可读存储介质及程序产品 | |
CN114416441A (zh) | 实时数据库自动化测试方法、系统、电子设备及存储介质 | |
CN112346994A (zh) | 一种测试信息关联方法、装置、计算机设备及存储介质 | |
CN113656318A (zh) | 软件版本测试方法、装置及计算机设备 | |
CN111813662A (zh) | 用户行为驱动的可持续集成的测试方法、装置和设备 | |
CN112329124A (zh) | Cae模型查错方法、装置、计算机设备和存储介质 | |
CN110750409A (zh) | 测试的实现方法、装置和系统 | |
CN113568795B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |