CN116028368A - 一种接口测试方法、装置、计算机设备及计算机可读存储介质 - Google Patents
一种接口测试方法、装置、计算机设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN116028368A CN116028368A CN202310041079.1A CN202310041079A CN116028368A CN 116028368 A CN116028368 A CN 116028368A CN 202310041079 A CN202310041079 A CN 202310041079A CN 116028368 A CN116028368 A CN 116028368A
- Authority
- CN
- China
- Prior art keywords
- mock
- interface
- downstream
- call
- return
- 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
Images
Classifications
-
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种接口测试方法,包括:录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;基于接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;待测试接口被调用时,到自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将该mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。本发明的接口测试方法基于真实环境录制的流量数据生成mock返回,并灵活编辑已经生成的mock返回以测试不同的场景,可以方便、快速且灵活的满足接口不同的场景测试需求。
Description
技术领域
本发明涉及网络技术领域,尤其涉及一种接口测试方法、装置、计算机设备及计算机可读存储介质。
背景技术
接口测试时,大多数情况下并不只涉及到自己系统内部的逻辑处理,待测试接口会调用很多个下游接口,并且会根据下游系统的返回走到不同的处理逻辑中,想要覆盖这些逻辑就需要下游返回对应的数据。下游返回数据可以通过现有的以下方案来实现:
方案1:针对每个下游来真实造数据造场景,保证下游返回想要的结果,测试场景更加真实,但是存在下游不属于公司自有的业务范围,下游系统的返回场景对本系统的测试而言比较难造,有的返回甚至无法用正常的业务返回,产生条件异常严格。因此,造这样的下游返回耗时很长,在下游造需要的数据和返回需要的场景对测试而言是一个耗时耗力的事情。
方案2:使用现有的mock平台,手动配置下游的mock返回,使下游返回想要的结果。此种方案不需要去下游造场景与数据就可以模拟下游的返回值,但是需要测试人员有比较好的代码能力,而且需要耗费时间去代码中找到调用下游的接口,需要测试人员自己构造下游的返回结构,并且测试人员自己配置的内容可能出现错误需要花时间排查问题,导致比较繁琐耗时。
方案3:流量回放平台直接用录制的流量数据mock返回,可以快速回归已经录制的流量场景,但是只可以固定录制好的流量case,测试的场景有限。
因此,在接口测试中需要下游返回数据进行接口测试时,需要一种接口测试方法以实现可以不需要造数据造场景而且不需要测试人员具有较强的代码能力来模拟下游返回值。
发明内容
本发明的目的在于提供一种接口测试方法、装置、计算机设备及计算机可读存储介质,旨在解决现有技术中进行接口测试时,需要下游造数据造场景或者是需要测试人员具有较强的代码能力来模拟下游返回数据的问题。
第一方面,本发明提供了一种接口测试方法,包括:
S101、录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;
S102、基于所述接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;
S103、根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;
S104、待测试接口被调用时,到所述自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将所述mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。
第二方面,本发明提供了一种接口测试装置,包括:
流量录制模块,用于录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;
mock用例生成模块,用于基于所述接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;
mock场景用例生成模块,用于根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;
数据处理模块,用于待测试接口被调用时,到所述自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将所述mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。
第三方面,本发明提供了一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如上所述的接口测试方法的步骤。
第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的接口测试方法的步骤。
在本发明中,基于真实场景流量录制数据实现生成mock下游返回,并且可以灵活编辑下游返回mock去做不同场景的功能测试,整个过程中既不用像传统的mock平台一样需要自己设计填充各个下游的mock返回,又不像流量回放平台提供的mock返回只能固定录制好的用例,不能动态调整返回。本实施例提供的接口测试数据生成方法可以方便、快捷、灵活的测试下游不同的返回逻辑,可以做不同场景的功能测试,也可以用来做回归测试,下游返回的数据结构真实可靠。
附图说明
图1是本发明实施例一提供的接口测试方法的流程图;
图2是本发明实施例二提供的接口测试装置的功能模块框图;
图3是本发明实施例三提供的计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
实施例一:
如图1所示,本发明实施例一提供了一种接口测试方法100,包括以下步骤:
S101、录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据,其中,接口调用相关数据包括接口调用数据、接口所有下游的链路关系和接口所有下游的返回数据。录制待测试接口在真实环境下的整个调用链路可以使用流量录制平台来录制,例如,流量录制平台是流量回放技术中的录制功能部分,即将真实的流量进行复制和存储。
S102、基于接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中。具体地,可以在自动mock平台的用例管理集中管理这些mock用例。已经录制好的每个完整的接口调用数据作为一个整体的mock用例。入口是被调用接口;整个调用链路中每个下游链路的调用都作为一个子调用,每个子调用包含调用条件和调用返回。一个接口调用对应多个子调用,用录制好的接口调用和子调用的关联关系确定mock用例中接口调用和子调用的关联关系。比如录制接口A的调用,整个调用链路中先有A调用下游链路B,后有A调用下游链路C。那么生成的用例中,调用A作为入口,自动生成的mock用例详情中,可以看到先有子调用B,然后有子调用C。
S103、根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例,以适应不同场景的测试需求。具体地,当接口测试需要接口下游返回需要的场景时,搜索生成的mock用例,对录制好的下游mock返回进行编辑,并且可以编辑走到该mock返回的调用条件,生成需要的各种类型的mock场景用例。
S104、待测试接口被调用时,到自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将该mock场景用例的mock数据作为下游数据返回,这样接口可以进入预期的处理逻辑中,完成该场景测试;当匹配失败时,调用真实下游的数据返回。
本发明中,基于流量录制数据实现生成mock下游返回,利用已经存在的数据方便快速针对下游返回的场景做测试,可以灵活编辑已经生成的mock返回,验证不同返回下的功能场景,而且使用的是真实环境录制的数据生成的mock返回,所以下游返回的数据结构真实可靠。。
实施例二:
本发明实施例二提供了一种接口测试装置200,包括:
流量录制模块201,用于录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;
mock用例生成模块202,用于基于接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;
mock场景用例生成模块203,用于根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;
数据处理模块204,用于待测试接口被调用时,到自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。
本发明实施例二提供的接口测试装置与本发明实施例一提供的接口测试方法属于同一构思,其具体实现过程详见说明书全文,此处不再赘述。
实施例三:
如图3所示,本发明实施例三提供了一种计算机设备300,包括:
一个或多个处理器301;
存储器302;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如实施例一提供的接口测试方法的步骤。
实施例四:
本发明实施例四提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一提供的接口测试方法的步骤。
在本发明中,基于真实场景流量录制数据实现生成mock下游返回,并且可以灵活编辑下游返回mock去做不同场景的功能测试,整个过程中既不用像传统的mock平台一样需要自己设计填充各个下游的mock返回,又不像流量回放平台提供的mock返回只能固定录制好的用例,不能动态调整返回。本发明提供的接口测试数据生成方法可以方便、快捷、灵活的测试下游不同的返回逻辑,可以做不同场景的功能测试,也可以用来做回归测试,下游返回的数据结构真实可靠。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种接口测试方法,其特征在于,所述方法包括:
S101、录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;
S102、基于所述接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;
S103、根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;
S104、所述待测试接口被调用时,到所述自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将所述mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。
2.如权利要求1所述的方法,其特征在于,所述接口调用相关数据是接口调用数据、接口所有下游的链路关系和接口所有下游的返回数据。
3.如权利要求1所述的方法,其特征在于,所述基于所述接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中,包括:
将已经录制好的每个完整的接口调用相关数据作为一个整体的mock用例,所述待测试接口作为入口,整个调用链路中每个下游链路的调用作为一个子调用,每个子调用包含调用条件和调用返回,一个接口调用对应多个子调用,用录制好的接口调用和子调用的关联关系确定所述mock用例中接口调用和子调用的关联关系。
4.一种接口测试装置,其特征在于,所述装置包括:
流量录制模块,用于录制待测试接口在真实环境下的整个调用链路,并且存储接口调用相关数据;
mock用例生成模块,用于基于所述接口调用相关数据,生成接口所有下游的mock返回并维护到自动mock平台的mock用例中;
mock场景用例生成模块,用于根据测试所需要的下游返回场景,搜索相应的mock用例并编辑其下游mock返回和调用条件,生成测试所需的mock场景用例;
数据处理模块,用于待测试接口被调用时,到所述自动mock平台匹配符合调用条件的mock用例,当匹配成功时,将所述mock场景用例的mock数据作为下游数据返回;当匹配失败时,调用真实下游的数据返回。
5.一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述的接口测试方法的步骤。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述的接口测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310041079.1A CN116028368A (zh) | 2023-01-12 | 2023-01-12 | 一种接口测试方法、装置、计算机设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310041079.1A CN116028368A (zh) | 2023-01-12 | 2023-01-12 | 一种接口测试方法、装置、计算机设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116028368A true CN116028368A (zh) | 2023-04-28 |
Family
ID=86070410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310041079.1A Pending CN116028368A (zh) | 2023-01-12 | 2023-01-12 | 一种接口测试方法、装置、计算机设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116028368A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795723A (zh) * | 2023-08-21 | 2023-09-22 | 建信金融科技有限责任公司 | 链式单元测试处理方法、装置及计算机设备 |
-
2023
- 2023-01-12 CN CN202310041079.1A patent/CN116028368A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795723A (zh) * | 2023-08-21 | 2023-09-22 | 建信金融科技有限责任公司 | 链式单元测试处理方法、装置及计算机设备 |
CN116795723B (zh) * | 2023-08-21 | 2023-11-21 | 建信金融科技有限责任公司 | 链式单元测试处理方法、装置及计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108647883B (zh) | 一种业务审批方法、装置、设备及介质 | |
US10354031B2 (en) | Information processing by interpenetrating signal transmission channel in design for testability of chip | |
CN111930617B (zh) | 基于数据对象化的自动化测试方法及装置 | |
CN108595342A (zh) | 单元测试方法和装置 | |
CN110879781B (zh) | 程序调试方法、装置、电子设备及计算机可读存储介质 | |
CN111597110B (zh) | 页面测试方法、装置、电子设备及存储介质 | |
CN111881022A (zh) | 基于测试场景生成测试用例的方法、装置和设备 | |
CN114003451B (zh) | 一种接口测试方法、装置、系统及介质 | |
CN115080398A (zh) | 一种接口自动化测试系统及方法 | |
CN116028368A (zh) | 一种接口测试方法、装置、计算机设备及计算机可读存储介质 | |
US11663113B2 (en) | Real time fault localization using combinatorial test design techniques and test case priority selection | |
CN115827436A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN113535141A (zh) | 数据库操作代码的生成方法及装置 | |
CN112650689A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN110147313B (zh) | 一种日志输出方法及装置 | |
CN112445702A (zh) | 基于蚁群算法的自动化测试方法和系统 | |
CN113485919B (zh) | 测试方法、测试装置及计算机可读存储介质 | |
CN114528214A (zh) | 单元测试方法和装置 | |
CN114328180A (zh) | 接口自动化测试方法、系统、电子设备及存储介质 | |
CN116795723B (zh) | 链式单元测试处理方法、装置及计算机设备 | |
CN114398280A (zh) | 系统测试用例的维护方法及装置、计算机设备及可读存储介质 | |
CN114185796A (zh) | 单元测试案例自动生成方法、装置、设备及存储介质 | |
CN115840715A (zh) | 软件测试管理方法、装置和存储介质 | |
CN115756940A (zh) | 一种集成故障场景的挡板系统、应用系统及方法 | |
CN114996154A (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 |