CN116881145B - 基于流量回放的接口测试方法、装置、设备以及存储介质 - Google Patents

基于流量回放的接口测试方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN116881145B
CN116881145B CN202310839351.0A CN202310839351A CN116881145B CN 116881145 B CN116881145 B CN 116881145B CN 202310839351 A CN202310839351 A CN 202310839351A CN 116881145 B CN116881145 B CN 116881145B
Authority
CN
China
Prior art keywords
flow
flow data
playback
tested
application
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
CN202310839351.0A
Other languages
English (en)
Other versions
CN116881145A (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.)
E Fund Management Co ltd
Original Assignee
E Fund Management 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 E Fund Management Co ltd filed Critical E Fund Management Co ltd
Priority to CN202310839351.0A priority Critical patent/CN116881145B/zh
Publication of CN116881145A publication Critical patent/CN116881145A/zh
Application granted granted Critical
Publication of CN116881145B publication Critical patent/CN116881145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/3664Environments for testing or debugging software
    • 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/3676Test management for coverage analysis
    • 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
    • G06F11/3692Test management for test results analysis
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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

本发明公开了一种基于流量回放的接口测试方法、装置、设备以及存储介质,所述方法包括:获取待测试应用在生产环境下录制得到的流量数据;将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。通过本发明可以提高流量回放的成功率。

Description

基于流量回放的接口测试方法、装置、设备以及存储介质
技术领域
本发明涉及流量录制回放领域,尤其涉及一种基于流量回放的接口测试方法、装置、设备以及存储介质。
背景技术
现有的接口测试方法,一般都是直接利用录制好的流量,自动生成测试用例来对接口进行自动化测试;其中,在进行流量录制时,通常是通过流量采集工具在生产环境下的应用层或传输层直接进行抓包获取录制流量,在进行接口测试时,首先需要在待测应用中搭建一个完整的测试环境,然后直接根据所录制的流量,将所录制的流量在测试环境中进行回放,自动完成接口测试。
但是,在利用流量回放来对接口进行测试时,由于所搭建的测试环境无法完全模拟流量录制时生产环境的所有情景,尤其是对于写接口的流量回放,所搭建的测试环境无法正确处理流量录制时生产环境下的各种接口和系统之间的依赖关系,会导致流量回放失败,流量回放的成功率不高。
发明内容
本发明提供了一种基于流量回放的接口测试方法、装置、设备以及存储介质,提高流量回放的成功率。
为了解决上述技术问题,本发明实施例提供了一种基于流量回放的接口测试方法,包括:
获取待测试应用在生产环境下录制得到的流量数据;
将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。
作为优选方案,所述流量数据的录制过程,包括:
在待测试应用的生产环境下,通过java agent录制待测试应用启动后的流量信息,以及流量运行过程中的子调用信息;其中,所述子调用信息包括:数据库调用信息、缓存调用信息以及外部服务调用信息;
根据所述流量信息和子调用信息生成待测试应用的流量数据。
作为优选方案,在将所述流量数据在预设的写接口测试环境中进行回放之前,还包括:
将所述流量数据中的各请求片段进行组装,得到一完整的请求流;
将所述流量数据中的各响应片段进行组装,得到一完整的响应流;
将组装后的请求流中的各请求与响应流中对应的响应进行匹配,并生成每一请求与对应的响应之间的唯一关联标识;
获取待测试应用的实时流量参数,根据所述实时流量参数对组装后的流量数据中的流量参数进行更新;其中,所述流量参数包括:时间戳、用户标识和会话令牌。
作为优选方案,所述将所述流量数据在预设的写接口测试环境中进行回放,包括:
将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的写接口测试环境;
根据所述每一写接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第一流量数据副本;
根据所述第一流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;
将添加后的第一流量数据副本在各对应的写接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第一流量数据副本中对应的动态数据。
作为优选方案,所述基于流量回放的接口测试方法,还包括:
将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的读接口测试环境;
根据所述每一读接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第二流量数据副本;
根据所述第二流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;
将添加后的第二流量数据副本在各对应的读接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第二流量数据副本中对应的动态数据,得到所述各读接口的响应报文。
作为优选方案,在得到所述写接口的响应报文之后,还包括:
对各写接口的响应报文进行降噪,将各写接口响应报文中预设类型的内容进行剔除;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;
获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各写接口响应报文与所述标准响应报文逐一进行比对,得到第一比对结果;
将降噪后的各写接口响应报文之间进行两两比对,得到第二比对结果;
获取各写接口在流量回放过程中所生成的子调用的SQL语句和入参,并将所生成的SQL语句与所述流量数据中的子调用的标准SQL语句进行比对,将所生成的入参与所述流量数据中的子调用的标准入参进行比对,得到第三比对结果;
根据所述第一比对结果、第二比对结果以及第三比对结果,对待测试应用的写接口测试结果进行分析。
作为优选方案,在得到所述各读接口的响应报文之后,还包括:
对各读接口的响应报文进行降噪,将各读接口响应报文中预设类型的内容设置为忽略;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;
获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,以及待测试应用在基线环境下,根据所述流量数据进行流量回放时所生成的基线响应报文;
将降噪后的各读接口响应报文与所述标准响应报文逐一进行比对,得到第四比对结果;
将降噪后的各读接口响应报文之间进行两两比对,得到第五比对结果;
将降噪后的各读接口响应报文与所述基线响应报文进行比对,得到第六比对结果;
根据所述第四比对结果、第五比对结果以及第六比对结果,对待测试应用的读接口测试结果进行分析。
在上述实施例的基础上,本发明另一实施例提供了一种基于流量回放的接口测试装置,包括:流量数据获取模块、流量数据回放模块、依赖访问结果提取模块以及依赖访问操作替换模块;
所述流量数据获取模块,用于获取待测试应用在生产环境下录制得到的流量数据;
所述流量数据回放模块,用于将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
所述依赖访问结果提取模块,用于根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
所述依赖访问操作替换模块,用于根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。
在上述实施例的基础上,本发明又一实施例提供了一种基于流量回放的接口测试设备,所述设备包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的基于流量回放的接口测试方法。
在上述实施例的基础上,本发明又一实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述的基于流量回放的接口测试方法。
相比于现有技术,本发明实施例具有如下有益效果:
在本发明中,获取待测试应用在生产环境下录制得到的流量数据之后,将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。通过所述mock操作,可以在写接口的测试过程中,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,即替换回放过程中的实际依赖操作,并直接返回所录制的依赖访问结果,由此可以在写接口的测试过程中,避免对实际的依赖进行访问,而是从所录制的待回放流量中获取实际依赖访问的访问结果,保证回放的一致性和可靠性,提高回放的成功率。
附图说明
图1是本发明一实施例提供的一种基于流量回放的接口测试方法的流程示意图;
图2是本发明一实施例提供的一种基于流量回放的接口测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,为本发明一实施例提供的一种基于流量回放的接口测试方法的流程示意图,包括如下具体步骤:
S1、获取待测试应用在生产环境下录制得到的流量数据;
优选的,所述流量数据的录制过程,包括:在待测试应用的生产环境下,通过javaagent录制待测试应用启动后的流量信息,以及流量运行过程中的子调用信息;其中,所述子调用信息包括:数据库调用信息、缓存调用信息以及外部服务调用信息;根据所述流量信息和子调用信息生成待测试应用的流量数据。
(1)获取流量:在根据流量回放进行接口测试之前,需要先在待测试应用的生产环境下,录制待测试应用的流量数据,即获取待测试应用的流量;其中,所述流量可以通过解析待测试应用的日志文件、数据库日志,或者使用抓包工具进行抓包后解析并清洗得到。
而对于java应用,除了通过上述方式获取流量之外,也可以通过java agent的方式在待测试应用启动时挂载用于录制回放的agent.jar,获取到待测试应用的流量信息和流量运行过程中的子调用信息,根据所获取到的流量信息和子调用信息生成待测试应用的流量数据。
其中,所述子调用信息是指在流量录制过程中,记录和获取到的与主调用(主调用就是流量入口)相关的其他调用的信息,通过无侵入的AOP拦截和Instrumentation特性机制进行捕捉。这些子调用包括但不限于对数据库的访问、缓存的读写操作以及与外部服务的交互等中间件的调用。
数据库调用信息:记录主调用与数据库的交互情况,包括数据库查询、更新、插入和删除等操作的语句、参数和执行时间等。这些信息对于还原主调用过程中对数据库的访问非常重要,可以帮助分析和排查潜在的性能问题或数据一致性的异常。
缓存调用信息:记录主调用对缓存的读取和写入操作,包括缓存键、值以及缓存命中率等关键信息。这些信息可以帮助了解主调用在运行过程中对缓存的利用情况,评估缓存策略的有效性,并发现可能存在的缓存使用问题。
外部服务调用信息:记录主调用与外部服务之间的交互信息,如HTTP请求、远程调用和消息传递等。这些信息可以包括请求的URL、参数、响应状态码和响应内容等,有助于还原主调用与外部服务的通信过程,分析服务间的依赖关系和性能瓶颈。
通过获取和记录这些子调用信息,流量录制系统能够准确地还原主调用的执行过程和与中间件的交互细节。这样,在根据所录制的流量进行回放时,系统就可以模拟出与原始执行环境相似的调用序列和中间件交互,实现对应用的准确复现和测试。
S2、将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
优选的,在将所述流量数据在预设的写接口测试环境中进行回放之前,还包括:将所述流量数据中的各请求片段进行组装,得到一完整的请求流;将所述流量数据中的各响应片段进行组装,得到一完整的响应流;将组装后的请求流中的各请求与响应流中对应的响应进行匹配,并生成每一请求与对应的响应之间的唯一关联标识;获取待测试应用的实时流量参数,根据所述实时流量参数对组装后的流量数据中的流量参数进行更新;其中,所述流量参数包括:时间戳、用户标识和会话令牌。
(2)流量的组装/更新:根据所录制的流量对待测试应用进行测试时,在将所录制得到流量数据在预设的接口测试环境中进行回放之前,需要将所述流量数据进行组装和更新处理,具体处理过程如下:
1、流量组装:将所述流量数据中的各请求片段进行组装,得到一完整的请求流;将所述流量数据中的各响应片段进行组装,得到一完整的响应流。
在流量的录制过程中,可能会将多个请求和响应片段分散记录在不同的数据库表中。因此在进行流量回放之前,需要将这些片段进行组装,以还原完整的请求和响应流。这涉及对流量数据进行分析和解析,将相关的请求和响应片段按照正确的顺序进行组合,确保回放时的请求与录制时的请求一致。这个过程中需要进行数据格式转换、请求参数替换等操作,以确保组装后的流量与录制时的流量保持一致。
2、请求匹配与响应关联:将组装后的请求流中的各请求与响应流中对应的响应进行匹配,并生成每一请求与对应的响应之间的唯一关联标识。
在流量回放过程中,请求和相应之间的匹配和关联是至关重要的,需要确保每个请求都能与相应的响应进行正确的匹配,以验证回放结果的准确性。因此需要在进行流量回放之前,需要将组装后的请求流中的各请求与响应流中对应的响应进行匹配,并生成每一请求与对应的响应之间的唯一关联标识,这个过程涉及对请求和响应进行唯一标识的处理和匹配算法的应用,以确保每个请求都能得到正确的响应,并验证响应的一致性和正确性。
3、参数更新:获取待测试应用的实时流量参数,根据所述实时流量参数对组装后的流量数据中的流量参数进行更新。
在所录制的流量数据中,一些请求可能包含特定的参数,如时间戳、用户标识、会话令牌等。这些参数需要根据回放需求进行自动更新,以确保回放时的请求与录制时的请求具有一致性,因此在进行流量回放之前,需要获取待测试应用的实时流量参数,根据所述实时流量参数对组装后的流量数据中的流量参数进行更新,更新参数的过程涉及对参数进行解析、分析和替换操作,根据回放场景和要求生成新的参数值。通过参数跟新可以消除回放中的潜在依赖和冲突,提高回放的成功率和准确性。
S3、根根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
优选的,所述基于流量回放的接口测试方法,还包括:将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的读接口测试环境;根据所述每一读接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第二流量数据副本;根据所述第二流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;将添加后的第二流量数据副本在各对应的读接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第二流量数据副本中对应的动态数据,得到所述各读接口的响应报文。
(3)读接口的流量回放:对于读接口的流量回放操作,可以按照以下步骤进行特定参数的添加、流量的复制以及流量的回放:
1、流量复制:将更新后的流量数据复制为若干份流量数据副本:
首先需要使用流量录制回放平台将原始流量复制多份,以便在不同的环境中进行回放。每个复制的流量副本对应一个测试环境。这样可以确保在多个环境中同时进行回放,并测试系统在不同环境下的性能和稳定性。
2、配置环境信息:根据所述每一读接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第二流量数据副本:
将复制的流量配置到每个对应的测试环境中,可以将相同的测试环境信息重复配置为多套,以便在回放过程中多次发送相同的流量到同一个测试环境。这样可以模拟实际系统中对同一接口的多次请求操作,并观察系统在处理多个请求的情况下的表现。
3、添加特定参数:根据所述第二流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数:
在回放时,在每个请求的请求头中添加特定参数,以便对流量进行归类和管理。可以使用自定义的请求头字段来添加特定参数,例如在请求头中添加"Canonical-Task"参数指定测试任务,"Canonical-Version"参数指定测试版本。通过这些参数,可以将回放的流量进行分类,并生成相应的回放测试报告,便于对不同版本和测试任务的回放结果进行管理和分析。
回放流量:将添加后的第二流量数据副本在各对应的读接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第二流量数据副本中对应的动态数据,得到所述各读接口的响应报文:
动态数据处理:某些系统或应用程序在运行过程中会生成动态数据,如验证码、临时令牌等。为了进行准确的回放,需要处理这些动态数据的生成和更新。在回放过程中,可以采用动态数据生成算法或机制,以在回放时生成相应的动态数据,并将其替换到回放请求中。这确保了回放请求的准确性和合法性。完成动态数据更新之后,使用流量录制回放平台进行回放操作。平台会根据配置的环境信息和特定参数进行流量的发送和回放。可以设置回放流量的发送间隔,以模拟实际场景下对同一环境的多次请求操作。
通过以上操作,可以实现对读接口的流量回放,并在回放过程中添加特定参数,方便管理和分类回放测试报告。这样可以更好地进行版本控制和测试任务管理,帮助评估系统的性能和稳定性。
优选的,所述将所述流量数据在预设的写接口测试环境中进行回放,包括:将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的写接口测试环境;根据所述每一写接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第一流量数据副本;根据所述第一流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;将添加后的第一流量数据副本在各对应的写接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第一流量数据副本中对应的动态数据。
(4)写接口的流量回放:对于写接口的流量回放,如果是Java应用,可以在流量回放过程中通过Agent.jar进行Mock操作,以模拟待测试应用对数据库、缓存、中间件等依赖的访问,并直接返回录制的数据,以下是对该过程的描述:
Agent.jar加载:在待测试应用启动时,通过Java Agent的方式加载Agent.jar;其中,所述Agent.jar包含了用于流量回放的相关逻辑和依赖的拦截代码。
AOP拦截和Instrumentation:Agent.jar利用Instrumentation特性机制,对待测试应用进行无侵入的AOP拦截。通过AOP拦截,可以在回放过程中拦截待测试应用的数据库访问、缓存读写、中间件调用等依赖操作。
Mock操作:当回放过程中拦截到待测试应用的依赖访问时,Agent.jar会进行Mock操作,即替换实际的依赖访问操作,直接返回录制的数据。这样可以避免对实际的依赖进行访问,而是从录制的数据中获取相应的结果,保证回放的一致性和可靠性。
数据返回:Agent.jar将录制的数据作为Mock结果返回给待测试应用。这样,待测试应用在回放过程中获得的结果就是录制时的数据,确保了回放的准确性。
通过上述的AOP拦截和Instrumentation机制以及Mock操作,可以实现对写接口的流量回放,并在回放过程中模拟待测试应用对数据库、缓存、中间件等依赖的访问。这样可以有效地控制回放过程中对实际依赖的访问,并确保回放的结果与录制时的数据一致。这种方式能够提高回放的可靠性和可重复性,帮助进行系统的功能验证和性能测试。
而对于非java的应用,可以运用解析应用日志文件并清洗的方式来获取写接口的流量数据,以服务转发的形式通过Http的服务类转发流量请求,获取待测试应用的返回结果,具体步骤如下:
1、日志解析:
系统读取非Java应用的日志文件,并按行遍历。对每一行日志,系统使用字符串处理技术(如正则表达式)来匹配预定义的关键字,以识别包含接口请求流量数据的记录。当匹配成功时,系统将提取的记录转换为可处理的数据结构,例如JSON对象,以便后续处理。
2、流量自动筛选:系统根据预先配置的流量参数,对解析后的日志记录进行筛选,其中,所述配置参数可以包括接口名称、请求方法、URL等条件。系统使用条件语句或过滤函数来检查每个记录是否符合流量参数的要求,仅保留符合条件的接口请求流量记录。
3、预处理:系统在预处理阶段识别存在依赖关系的流量记录和关联字段。对于依赖关系,系统根据请求之间的关系确定其顺序,并按正确的顺序发送这些请求。系统记录关联字段的值,并在数据回放时将其还原到请求中,以确保回放的请求与原始请求具有相同的数据。
4、数据回放:系统创建一个转发服务,该服务通过HTTP服务类接收请求并将其转发到目标非Java应用程序。在数据回放过程中,系统按照预处理阶段确定的顺序发送记录的请求,以保持链路一致性。系统使用适当的网络请求技术(如HTTP请求库)将请求发送到目标应用程序,并获取应用程序返回的结果。
通过以上逻辑,系统不仅能够解析非Java应用的日志文件并转发接口请求,还能以日志回放的形式实现对写接口的录制和回放。这种日志回放的方式对应用本身没有任何影响,并且在底层基于数据快照的支持下,所记录的数据具有可重用性。
通过日志回放,系统可以记录并保存所有发送给非Java应用的写接口请求。这些请求可以随时回放,重现相同的写操作,以便进行测试、调试或回溯。此外,由于日志录制基于底层,记录的数据可以进行数据快照,以确保数据的完整性和可重现性。
另外,通过日志回放技术,系统能够模拟真实的写接口请求并回放,实现对应用的功能和性能测试。以下是该技术的主要优势和适用场景:
1、数据构建周期长的问题:
a)由于数据构建可能需要大量时间和资源,传统的测试方法往往受到数据构建周期的限制。
b)非Java写接口的日志回放可以通过记录和回放真实的请求数据,避免了重新构建数据的过程,从而显著缩短了测试周期。
2、环境依赖的问题:
a)应用的正常运行通常需要依赖特定的环境,例如数据库、网络配置等。
b)通过日志回放,系统可以在不同环境中重现相同的请求流量,消除了对特定环境的依赖性,提供了更灵活的测试环境管理和部署方式。
3、业务覆盖单一的问题:
a)在应用的升级迭代中,需要覆盖各种不同的业务场景和边界条件,以确保应用的稳定性和功能完整性。
b)非Java写接口的日志回放可以记录和回放各种不同的请求,使得测试能够覆盖更广泛的业务场景,提高了测试的全面性和准确性。
通过应用非Java写接口的日志回放技术,系统能够有效应对长数据构建周期、环境依赖和业务覆盖单一等挑战,从而显著降低了测试成本,提高了测试效率和质量。
S4、根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。
优选的,在得到所述各读接口的响应报文之后,还包括:对各读接口的响应报文进行降噪,将各读接口响应报文中预设类型的内容设置为忽略;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,以及待测试应用在基线环境下,根据所述流量数据进行流量回放时所生成的基线响应报文;将降噪后的各读接口响应报文与所述标准响应报文逐一进行比对,得到第四比对结果;将降噪后的各读接口响应报文之间进行两两比对,得到第五比对结果;将降噪后的各读接口响应报文与所述基线响应报文进行比对,得到第六比对结果;根据所述第四比对结果、第五比对结果以及第六比对结果,对待测试应用的读接口测试结果进行分析。
(5)读接口的流量回放结果比对:对于读接口的回放,可以通过比较响应报文来进行回放结果的验证。
1、报文降噪:在比对过程中,可能会存在一些噪音或不重要的差异,例如时间戳、请求ID等动态信息。为了排除这些差异对比对结果的影响,可以在对比之前,先对报文进行降噪操作。降噪的过程可以移除或忽略与业务逻辑无关的差异,使得比对更加准确和稳定。
2、标准响应报文比对:获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各读接口响应报文与所述标准响应报文逐一进行比对,得到第四比对结果。在读接口的回放过程中,可以直接比较回放得到的响应报文与录制时的标准响应报文进行比对。这种比对可以通过对报文的结构和内容进行逐一匹配来完成,以验证回放结果的准确性和一致性。
3、多个测试环境的相互比对:将降噪后的各读接口响应报文之间进行两两比对,得到第五比对结果。为了进一步降低噪音的影响,可以将多个测试环境的回放结果进行相互比对。通过将不同环境的响应报文进行比对,可以排除一些环境特定的变化或误差,进一步提高回放结果的准确性。这样可以将多个环境的结果进行综合分析,得出更可靠的比对结果。
4、基线报文比对:获取待测试应用在基线环境下,根据所述流量数据进行流量回放时所生成的基线响应报文,将降噪后的各读接口响应报文与所述基线响应报文进行比对,得到第六比对结果。除了测试环境之间的比对,还可以将回放结果与一个基线环境的报文进行比对。基线环境可以作为一个参考标准,用于验证回放结果是否与基线环境的期望结果一致。这样可以进一步确保回放结果的正确性和稳定性。
其中,具体的降噪操作可以包括以下方面:
a)动态参数忽略:识别和忽略报文中的动态参数,例如时间戳、请求ID、流水号等。这些参数在每次请求中都会有所变化,但对于回放结果的验证并不重要。
b)忽略空格和换行符:在比对过程中,可以移除报文中的空格、制表符和换行符等空白字符。这些空白字符对于报文的实际内容并没有影响,移除它们可以减少比对过程中的差异。
c)忽略大小写:可以在比对过程中忽略报文中字母的大小写差异,因为大小写对于报文的实际含义通常是可忽略的。
d)暂时不关注的差异:由于代码改动,测试人员已知的预期内的差异,比如接口新增或者删除了字段,比对一定不通过,而且不希望花时间排查此类差异,可以通过对这些字段进行降噪来进行忽略。
降噪配置的时效性:对于比对过程中出现的失败情况,可以通过手动在平台添加配置进行降噪。降噪配置的时效性可以根据需求进行设置,可以选择在该次任务有效、该版本有效或永久有效。这样可以根据具体情况进行灵活的降噪操作,提高比对结果的可靠性。
通过以上操作,可以实现对读接口回放结果的比对和降噪处理。这样可以通过多个测试环境的相互比对和与基线环境的比对,减少噪音的影响,得出更准确和可靠的比对结果。降噪配置的时效性也可以根据实际需要进行设置,以满足不同任务和版本的要求。总的来说,读接口的回放支持任意数量的测试环境,通过多次降噪提升了比对的成功率,并通过自定义请求头和自定义配置,降低了管理成本。
优选的,在得到所述写接口的响应报文之后,还包括:对各写接口的响应报文进行降噪,将各写接口响应报文中预设类型的内容进行剔除;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各写接口响应报文与所述标准响应报文逐一进行比对,得到第一比对结果;将降噪后的各写接口响应报文之间进行两两比对,得到第二比对结果;获取各写接口在流量回放过程中所生成的子调用的SQL语句和入参,并将所生成的SQL语句与所述流量数据中的子调用的标准SQL语句进行比对,将所生成的入参与所述流量数据中的子调用的标准入参进行比对,得到第三比对结果;根据所述第一比对结果、第二比对结果以及第三比对结果,对待测试应用的写接口测试结果进行分析。
(6)写接口的流量回放结果比对:在进行流量回放结果比对时,Java应用的写接口的比对除了响应报文,还需要比较子调用是否匹配。
1、响应报文的比对:在写接口的比对中,响应报文的比对可以采用类似于读接口的比对方式。通过比对报文的结构和内容来验证回放结果的准确性和一致性,这样可以确保写接口的回放结果与录制时的预期结果一致。
标准响应报文的比对:获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各写接口响应报文与所述标准响应报文逐一进行比对,得到第一比对结果。同Java应用的写接口一样,系统会将回放得到的响应内容与录制时的响应内容进行逐一比对。通过比对字段及内容,系统验证回放结果的准确性和一致性,确保写接口的回放结果与录制时的预期结果一致。
多个测试环境结果对比:将降噪后的各写接口响应报文之间进行两两比对,得到第二比对结果。同一批流量可以在多个测试环境中进行回放,并将回放结果进行相互比对。系统会比对不同环境的回放结果及结果状态,通过差异反馈回放的准确性。这样可以确保不同环境下的回放结果的一致性,并发现环境间的差异。
2、子调用的比对:获取各写接口在流量回放过程中所生成的子调用的SQL语句和入参,并将所生成的SQL语句与所述流量数据中的子调用的标准SQL语句进行比对,将所生成的入参与所述流量数据中的子调用的标准入参进行比对,得到第三比对结果。
对于子调用的比对,可以通过比对SQL语句(包括存储过程)和入参来判断最终落地数据是否一致。具体的比对方式可以包括以下方面:
a)SQL语句比对:将回放过程中的SQL语句与录制时的SQL语句进行比对,确保它们的结构和内容一致。这可以通过逐一比对SQL语句中的关键信息,例如表名、字段名、条件语句等,来验证子调用的准确性。
b)入参比对:将回放过程中的子调用的入参与录制时的入参进行比对。其中,所述入参可以是传递给数据库、缓存或其他中间件的参数,通过比对参数的值和格式来判断子调用的准确性。
结果比对之后,对于相同原因的回放失败可以智能归类,方便定位回放失败原因。
另外,对于特殊类型的流量,例如金融行业中常见的清算类接口,其回放需要比对大量涉及数据库的库表修改操作。为此,本技术方案针对这类流量提供了特殊支持:在配置比对环境和SQL后,系统能够以图形化的方式展示两套数据库之间的差异。这样可以方便测试人员检查比对不一致的数据,帮助确保回放的准确性。
总的来说,java写接口的回放和比对支持自定义测试服务进行处理,可以降低回放失败率,通过直接比对sql语句和入参,可以对写在xml等资源文件中的sql语句的变动进行比对。回放时可以解耦流量和系统直接的依赖关系,无需搭建全套测试环境,降低了回放成本。
由此可见,本发明提供了一种基于流量回放的接口测试方法,通过本发明中的mock操作,可以在写接口的测试过程中,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,即替换回放过程中的实际依赖操作,并直接返回所录制的依赖访问结果,由此可以在写接口的测试过程中,避免对实际的依赖进行访问,而是从所录制的待回放流量中获取实际依赖访问的访问结果,保证回放的一致性和可靠性,提高回放的成功率。
实施例二
请参照图2,为本发明一实施例提供的一种基于流量回放的接口测试装置的结构示意图,该装置包括:流量数据获取模块、流量数据回放模块、依赖访问结果提取模块以及依赖访问操作替换模块;
所述流量数据获取模块,用于获取待测试应用在生产环境下录制得到的流量数据;
所述流量数据回放模块,用于将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
所述依赖访问结果提取模块,用于根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
所述依赖访问操作替换模块,用于根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文。
实施例三
相应地,本发明实施例提供了一种基于流量回放的接口测试设备,所述设备包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的基于流量回放的接口测试方法。
实施例四
相应地,本发明实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述的基于流量回放的接口测试方法。
综上所述,本发明提供了一种基于流量回放的接口测试装置、设备以及存储介质,通过本发明中的mock操作,可以在写接口的测试过程中,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,即替换回放过程中的实际依赖操作,并直接返回所录制的依赖访问结果,由此可以在写接口的测试过程中,避免对实际的依赖进行访问,而是从所录制的待回放流量中获取实际依赖访问的访问结果,保证回放的一致性和可靠性,提高回放的成功率。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
所述领域的技术人员可以清楚地了解到,为的方便和简洁,上述描述的装置的具体工作过程,可参考前述方法实施例中对应的过程,在此不再赘述。
设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述设备的控制中心,利用各种接口和线路连接整个设备的各个部分。
所述存储器可用于存储所述计算机程序,所述处理器通过运行或执行存储在所述存储器内的计算机程序,以及调用存储在存储器内的数据,实现所述设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述存储介质为计算机可读存储介质,所述计算机程序存储在所述计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (8)

1.一种基于流量回放的接口测试方法,其特征在于,包括:
获取待测试应用在生产环境下录制得到的流量数据;
将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文;
对各写接口的响应报文进行降噪,将各写接口响应报文中预设类型的内容进行剔除;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;
获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各写接口响应报文与所述标准响应报文逐一进行比对,得到第一比对结果;
将降噪后的各写接口响应报文之间进行两两比对,得到第二比对结果;
获取各写接口在流量回放过程中所生成的子调用的SQL语句和入参,并将所生成的SQL语句与所述流量数据中的子调用的标准SQL语句进行比对,将所生成的入参与所述流量数据中的子调用的标准入参进行比对,得到第三比对结果;
根据所述第一比对结果、第二比对结果以及第三比对结果,对待测试应用的写接口测试结果进行分析;
其中,所述流量数据的录制过程,包括:
在待测试应用的生产环境下,通过java agent录制待测试应用启动后的流量信息,以及流量运行过程中的子调用信息;其中,所述子调用信息包括:数据库调用信息、缓存调用信息以及外部服务调用信息;
根据所述流量信息和子调用信息生成待测试应用的流量数据。
2.如权利要求1所述的基于流量回放的接口测试方法,其特征在于,在将所述流量数据在预设的写接口测试环境中进行回放之前,还包括:
将所述流量数据中的各请求片段进行组装,得到一完整的请求流;
将所述流量数据中的各响应片段进行组装,得到一完整的响应流;
将组装后的请求流中的各请求与响应流中对应的响应进行匹配,并生成每一请求与对应的响应之间的唯一关联标识;
获取待测试应用的实时流量参数,根据所述实时流量参数对组装后的流量数据中的流量参数进行更新;其中,所述流量参数包括:时间戳、用户标识和会话令牌。
3.如权利要求2所述的基于流量回放的接口测试方法,其特征在于,所述将所述流量数据在预设的写接口测试环境中进行回放,包括:
将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的写接口测试环境;
根据所述每一写接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第一流量数据副本;
根据所述第一流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;
将添加后的第一流量数据副本在各对应的写接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第一流量数据副本中对应的动态数据。
4.如权利要求2所述的基于流量回放的接口测试方法,其特征在于,还包括:
将更新后的流量数据复制为若干份流量数据副本;其中,每一流量数据副本对应一预设的读接口测试环境;
根据所述每一读接口测试环境的配置,对相应的流量数据副本的配置进行设定,生成第二流量数据副本;
根据所述第二流量数据副本中的每一请求的类型,在各请求的请求头中添加预设类型的参数;
将添加后的第二流量数据副本在各对应的读接口测试环境中进行回放,并根据预设的动态数据生成算法,在回放过程中生成待测试应用的动态数据,将所生成的动态数据替换所述第二流量数据副本中对应的动态数据,得到所述各读接口的响应报文。
5.如权利要求4所述的基于流量回放的接口测试方法,其特征在于,在得到所述各读接口的响应报文之后,还包括:
对各读接口的响应报文进行降噪,将各读接口响应报文中预设类型的内容设置为忽略;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;
获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,以及待测试应用在基线环境下,根据所述流量数据进行流量回放时所生成的基线响应报文;
将降噪后的各读接口响应报文与所述标准响应报文逐一进行比对,得到第四比对结果;
将降噪后的各读接口响应报文之间进行两两比对,得到第五比对结果;
将降噪后的各读接口响应报文与所述基线响应报文进行比对,得到第六比对结果;
根据所述第四比对结果、第五比对结果以及第六比对结果,对待测试应用的读接口测试结果进行分析。
6.一种基于流量回放的接口测试装置,其特征在于,包括:流量数据获取模块、流量数据回放模块、依赖访问结果提取模块、依赖访问操作替换模块以及测试结果分析模块;
所述流量数据获取模块,用于获取待测试应用在生产环境下录制得到的流量数据;其中,所述流量数据的录制过程,包括:在待测试应用的生产环境下,通过java agent录制待测试应用启动后的流量信息,以及流量运行过程中的子调用信息;其中,所述子调用信息包括:数据库调用信息、缓存调用信息以及外部服务调用信息;根据所述流量信息和子调用信息生成待测试应用的流量数据;
所述流量数据回放模块,用于将所述流量数据在预设的写接口测试环境中进行回放,并在回放过程中对被测试应用的依赖访问操作进行拦截;
所述依赖访问结果提取模块,用于根据所拦截的依赖访问操作,在所述流量数据中提取所述依赖访问操作所对应的依赖访问结果;其中,所述依赖访问操作包括:被测试应用对数据库、缓存以及中间件的依赖访问操作;
所述依赖访问操作替换模块,用于根据mock模拟所拦截的依赖访问操作,将所mock的模拟依赖访问操作替换所拦截的依赖访问操作,并将所提取的依赖访问结果作为所述模拟依赖访问操作的访问结果,得到所述写接口的响应报文;
所述测试结果分析模块,用于对各写接口的响应报文进行降噪,将各写接口响应报文中预设类型的内容进行剔除;其中,所述预设类型包括:响应报文的动态参数、空格、换行符以及字母大小写的差异;
获取待测试应用在生产环境下录制流量数据时所生成的标准响应报文,将降噪后的各写接口响应报文与所述标准响应报文逐一进行比对,得到第一比对结果;
将降噪后的各写接口响应报文之间进行两两比对,得到第二比对结果;
获取各写接口在流量回放过程中所生成的子调用的SQL语句和入参,并将所生成的SQL语句与所述流量数据中的子调用的标准SQL语句进行比对,将所生成的入参与所述流量数据中的子调用的标准入参进行比对,得到第三比对结果;
根据所述第一比对结果、第二比对结果以及第三比对结果,对待测试应用的写接口测试结果进行分析。
7.一种基于流量回放的接口测试设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任意一项所述的基于流量回放的接口测试方法。
8.一种存储介质,其特征在于,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行如权利要求1至5中任意一项所述的基于流量回放的接口测试方法。
CN202310839351.0A 2023-07-10 2023-07-10 基于流量回放的接口测试方法、装置、设备以及存储介质 Active CN116881145B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310839351.0A CN116881145B (zh) 2023-07-10 2023-07-10 基于流量回放的接口测试方法、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310839351.0A CN116881145B (zh) 2023-07-10 2023-07-10 基于流量回放的接口测试方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN116881145A CN116881145A (zh) 2023-10-13
CN116881145B true CN116881145B (zh) 2024-03-15

Family

ID=88262851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310839351.0A Active CN116881145B (zh) 2023-07-10 2023-07-10 基于流量回放的接口测试方法、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN116881145B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117312175B (zh) * 2023-11-29 2024-03-22 盛业信息科技服务(深圳)有限公司 数据处理方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111767227A (zh) * 2020-06-30 2020-10-13 深圳前海微众银行股份有限公司 一种录制回放测试的方法及装置
CN112115042A (zh) * 2020-08-12 2020-12-22 浙江大学 一种基于采集回放的软件测试方法和系统
CN114564382A (zh) * 2022-01-17 2022-05-31 贝壳找房网(北京)信息技术有限公司 基于数据模拟的移动端用户界面测试方法及存储介质
CN116346660A (zh) * 2023-03-22 2023-06-27 平安理财有限责任公司 基于依赖替换服务的数据处理方法、装置、设备及介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100571167C (zh) * 2006-02-24 2009-12-16 国际商业机器公司 Web服务业务流程的单元测试的方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111767227A (zh) * 2020-06-30 2020-10-13 深圳前海微众银行股份有限公司 一种录制回放测试的方法及装置
CN112115042A (zh) * 2020-08-12 2020-12-22 浙江大学 一种基于采集回放的软件测试方法和系统
CN114564382A (zh) * 2022-01-17 2022-05-31 贝壳找房网(北京)信息技术有限公司 基于数据模拟的移动端用户界面测试方法及存储介质
CN116346660A (zh) * 2023-03-22 2023-06-27 平安理财有限责任公司 基于依赖替换服务的数据处理方法、装置、设备及介质

Also Published As

Publication number Publication date
CN116881145A (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
US8584083B2 (en) Software application recreation
US7941789B2 (en) Common performance trace mechanism
US9465718B2 (en) Filter generation for load testing managed environments
US7979850B2 (en) Method and system for generating a common trace data format
US8516451B2 (en) System and method for creating virtual callback objects
US20110295801A1 (en) Filtering workload for database replay
Nivas Test harness and script design principles for automated testing of non-GUI or web based applications
CN103729294B (zh) 应用软件性能脚本测试方法与装置
US20080098358A1 (en) Method and system for providing a common structure for trace data
US11288245B2 (en) Telemetry definition system
US11556456B2 (en) Telemetry system extension
CN116881145B (zh) 基于流量回放的接口测试方法、装置、设备以及存储介质
US10824549B1 (en) System and method for regression testing of an application programming interface
CN112650688A (zh) 自动化回归测试方法、关联设备以及计算机程序产品
CN111737140A (zh) 接口自动化测试方法、装置、设备及计算机可读存储介质
CN116204438A (zh) 测试用例生成方法、自动化测试方法和相关装置
CN113742200A (zh) 数据库版本升级的测试方法、设备及计算机可读介质
CN111464384A (zh) 一种异步消息的一致性测试方法及装置
CN111159040A (zh) 一种测试数据生成方法、装置、设备及存储介质
CN115455059A (zh) 一种基于底层数据解析用户行为的方法、装置及相关介质
US9176797B1 (en) Workflow processing and methods for auditing and playback of data
US11288175B1 (en) Software production load and software test load synchronization feedback system
Spæren Performance analysis and improvements for Apache Beam
CN118051426A (zh) 测试方法、装置及相关设备
WO2024098746A1 (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