CN115098371A - 接口测试方法、装置、存储介质及电子设备 - Google Patents
接口测试方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN115098371A CN115098371A CN202210731876.8A CN202210731876A CN115098371A CN 115098371 A CN115098371 A CN 115098371A CN 202210731876 A CN202210731876 A CN 202210731876A CN 115098371 A CN115098371 A CN 115098371A
- Authority
- CN
- China
- Prior art keywords
- interface
- recording
- flow
- data
- target
- 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
-
- 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/3696—Methods or tools to render software testable
Abstract
本申请公开了一种接口测试方法、装置、存储介质及电子设备,首先接收基于用户操作触发的接口调用请求,并对接口调用请求进行解析以确定接口调用请求对应的目标接口,然后对目标接口的操作流程进行录制,得到接口流程录制数据,再对接口流程录制数据进行数据提取处理,得到有效流程录制数据,之后根据有效流程录制数据生成接口测试用例,最后基于接口测试用例对目标接口进行测试。由于用户无需通过手动输入接口信息的方式来编写接口测试用例,只需触发接口调用请求即可自动录制目标接口的操作流程,并根据录制的目标接口的操作流程自动生成接口测试用例,从而降低时间及人力成本,进而有效提高接口测试效率。
Description
技术领域
本申请涉及测试技术领域,尤其涉及一种接口测试方法、装置、存储介质及电子设备。
背景技术
随着计算机技术的不断发展,应用程序越来越多,由于应用程序需要通过相应接口进行数据传输,因而开发的接口数量也越来越多。为了保证新开发的接口在运行过程中的稳定性及可靠性,通常需要对新开发的接口进行接口测试,其中,编写接口用例是接口测试前的重要环节。
当前通常是通过技术人员将接口信息手动输入自动化测试平台的方式进行接口用例的编写,在应用程序的调用逻辑复杂的情况下,通常需要开发成千上万个接口,也即需要编写成千上万个接口用例,若采用手动输入的方式进行接口用例的编写无疑会耗费大量时间成本及人力成本,导致接口测试效率较低。
发明内容
本申请提供一种接口测试方法、装置、存储介质及电子设备,用于缓解当前接口测试效率低的技术问题。
为了解决上述技术问题,本申请提供以下技术方案:
本申请提供一种接口测试方法,包括:
接收基于用户操作触发的接口调用请求;
对所述接口调用请求进行解析,以确定所述接口调用请求对应的目标接口;
对所述目标接口的操作流程进行录制,得到接口流程录制数据;
对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据;
根据所述有效流程录制数据生成接口测试用例;
基于所述接口测试用例对所述目标接口进行测试。
其中,所述接口调用请求包括前端接口调用请求,所述接收基于用户操作触发的接口调用请求的步骤,包括:
检测基于用户操作触发的前端页面交互操作;
接收基于所述前端页面交互操作触发的所述前端接口调用请求。
其中,所述接口调用请求还包括后端接口调用请求,所述接收基于用户操作触发的接口调用请求的步骤,还包括:
检测基于用户操作触发的后端接口调用操作;
接收所述后端接口调用操作对应的所述后端接口调用请求。
其中,所述对所述目标接口的操作流程进行录制,得到接口流程录制数据的步骤,包括:
对所述前端页面交互操作进行录制,得到前端操作流程;
确定所述前端操作流程对应的目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据;
对所述目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将所述应用程序代码作为所述接口流程录制数据。
其中,所述确定所述前端操作流程对应的目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据的步骤,包括:
获取所述前端操作流程对应的消息队列;其中,所述消息队列中存储有所述目标接口对应的请求体信息和返回体信息;
根据所述消息队列确定目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据。
其中,所述对所述目标接口的操作流程进行录制,得到接口流程录制数据的步骤,还包括:
获取所述后端接口调用操作对应的链路标识;
根据所述链路标识确定并录制目标接口操作流程;
获取所述目标接口操作流程对应的目标接口操作数据;
对所述目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将所述应用程序代码作为所述接口流程录制数据。
其中,所述接口流程录制数据包括若干接口流程录制参数,所述对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据的步骤,包括:
检测各接口流程录制参数之间的关联值;
若所述关联值小于阈值,从各接口流程录制参数中提取出若干有效流程录制参数;所述有效流程录制参数为所述关联值大于或等于所述阈值的所述接口流程录制参数;
将所述若干有效流程录制参数作为所述有效流程录制数据。
其中,所述检测各接口流程录制参数之间的关联值的步骤,包括:
将各接口流程录制参数输入参数识别网络,以通过所述参数识别网络提取各接口流程录制参数的参数特征,并根据所述参数特征对各接口流程录制参数进行分类处理,得到各接口流程录制参数的参数属性;
根据所述参数属性确定各接口流程录制参数之间的关联值。
本申请实施例还提供了一种接口测试装置,包括:
接收模块,用于接收基于用户操作触发的接口调用请求;
解析模块,用于对所述接口调用请求进行解析,以确定所述接口调用请求对应的目标接口;
录制模块,用于对所述目标接口的操作流程进行录制,得到接口流程录制数据;
提取模块,用于对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据;
生成模块,用于根据所述有效流程录制数据生成接口测试用例;
测试模块,用于基于所述接口测试用例对所述目标接口进行测试。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述接口测试方法中的步骤。
本申请实施例还提供了一种电子设备,包括处理器和存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据,所述处理器用于执行上述接口测试方法中的步骤。
本申请提供一种接口测试方法、装置、存储介质及电子设备,首先接收基于用户操作触发的接口调用请求,并对接口调用请求进行解析以确定接口调用请求对应的目标接口,然后对目标接口的操作流程进行录制,得到接口流程录制数据,再对接口流程录制数据进行数据提取处理,得到有效流程录制数据,之后根据有效流程录制数据生成接口测试用例,最后基于接口测试用例对目标接口进行测试。由于用户无需通过手动输入接口信息的方式来编写接口测试用例,只需触发接口调用请求即可自动录制目标接口的操作流程,并根据录制的目标接口的操作流程自动生成接口测试用例,从而有效降低时间及人力成本,进而提高接口测试效率。
附图说明
下面结合附图,通过对本申请的具体实施方式详细描述,将使本申请的技术方案及其它有益效果显而易见。
图1是本申请实施例提供的接口测试方法的流程示意图。
图2是本申请实施例提供的接口测试方法的场景示意图。
图3是本申请实施例提供的接口测试装置的结构示意图。
图4是本申请实施例提供的电子设备的结构示意图。
图5是本申请实施例提供的电子设备的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种接口测试方法、装置、存储介质及电子设备。
如图1所示,图1是本申请实施例提供的接口测试方法的流程示意图,具体流程可以如下:
S101.接收基于用户操作触发的接口调用请求。
其中,用户操作为用户为了实现应用程序(APP)功能所执行的前端操作或后端操作,接口调用请求为根据用户操作生成的用于请求接口进行数据传输的指令。具体地,当用户需要实现应用程序某一项/多项功能时,由于功能实现过程需要进行相关数据的传输、交互,通常需要通过前端操作或后端操作触发接口调用请求,以请求调用相应的接口进行相关数据的传输。
在一个实施例中,接口调用请求为前端接口调用请求,在实际应用过程中,首先检测基于用户操作触发的前端页面交互操作,并接收基于前端页面交互操作触发的前端接口调用请求。可选地,在实际应用过程中,用户可通过电子设备(例如,智能手机、电脑等)执行前端页面交互操作。
例如,如图2所示,用户为了购买保险产品,需要在保险商城进行登录,为此,用户在保险商城登录页面2001中输入用户名、密码等信息,并点击登录按钮2002以触发登录接口调用请求。
在另一个实施例中,接口调用请求为后端接口调用请求,首先检测基于用户操作触发的后端接口调用操作,然后接收后端接口调用操作对应的后端接口调用请求。其中,在实际应用过程中,由于一些接口调用请求无法通过前端页面交互操作触发,因此需要使用一些自动化工具(例如,postman、jmeter等)直接发起接口调用请求以调用接口,从而完成相应的数据传输。
S102.对接口调用请求进行解析,以确定接口调用请求对应的目标接口。
其中,目标接口为接口调用请求所请求调用的对象。具体地,服务器在接收到接口调用请求后,根据接口调用请求生成接口调用请求日志,并在接口调用请求日志中对用户操作所触发的各个接口调用请求进行记录,同时对接口调用请求日志中的各接口调用请求进行解析,得到各接口调用请求所请求调用的目标接口。
例如,对接口调用请求日志中记录的登录接口调用请求进行解析,得到该登录接口调用请求所请求调用的目标接口为登录接口。
S103.对目标接口的操作流程进行录制,得到接口流程录制数据。
其中,接口流程录制数据用于表征目标接口在数据传输过程中所执行的操作。具体地,目标接口是外部系统与系统之间/系统内部各个子系统之间的交互点,可以用以检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等,录制目标接口的操作流程的目的在于验证目标接口实现的功能以及性能指标与接口设计文档的一致性。
在一个实施例中,上述步骤S103具体包括:
对前端页面交互操作进行录制,得到前端操作流程;
确定前端操作流程对应的目标接口操作流程,并获取目标接口操作流程对应的目标接口操作数据;
对目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将应用程序代码作为接口流程录制数据。
其中,前端操作流程为前端页面交互操作所经历的各前端页面主体(或页面组件)的切换过程,在前端页面主体(或页面组件)的切换过程中,目标接口会基于前端交互操作进行对应的数据传输操作,目标接口操作流程即为目标接口在切换过程中的各项数据传输操作,目标接口操作数据即为该数据传输操作所对应的数据。具体地,在获取目标接口操作数据时,首先获取前端操作流程对应的mq(Message Queue,消息队列)信息,其中,该mq信息中包含目标接口的统一资源定位符,以及其对应的请求体信息和返回体信息,然后根据mq信息即可确定目标接口操作流程,之后再根据该目标接口操作流程获取对应的目标接口操作数据。
在另一个实施例中,上述步骤S103具体包括:
获取后端接口调用操作对应的链路标识;
根据链路标识确定并录制目标接口操作流程;
获取目标接口操作流程对应的目标接口操作数据;
对目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将应用程序代码作为接口流程录制数据。
其中,链路标识包括rid(resource identifier,资源标识符),是链路的唯一标识符,在进行数据通信时,两个计算机之间的通路往往是由许多的链路串接而成的,为了区分各链路,通常采用链路标识对各链路进行标记。具体地,在实际应用过程中,由于有时需要使用一些自动化工具直接调用目标接口,并通过目标接口来触发后续流程,为了知悉触发的流程所调用的链路详情(例如,后续触发的流程所调用的所有目标接口的详细信息),可预先通过rid对各链路进行唯一标记,后续根据rid进行反向推导即可确定所调用的链路详情。同样地,目标接口操作数据为目标接口在触发后续流程的过程中的各项数据传输操作所对应的数据。
S104.对接口流程录制数据进行数据提取处理,得到有效流程录制数据。
其中,有效流程录制数据为相关性较强的接口流程录制数据。具体地,由于在对目标接口的操作流程进行录制的过程中,可能会因为外界因素(例如,用户在A应用程序内等待a1页面跳转至a2页面时,不小心点击了B应用程序内的b1页面跳转按键)发生误操作/无关操作,导致目标接口实现的功能及性能指标与接口设计文档一致性的验证结果不准确,为了避免上述情况,需要对接口流程录制数据进行数据提取处理,得到相关性较强的接口流程录制数据。
进一步地,在一个实施例中,接口流程录制数据包括若干接口流程录制参数(用于表征目标接口操作流程的每一步所对应的操作数据),在进行数据提取处理时,首先检测各接口流程录制参数之间的关联值,若关联值小于阈值则说明流程之间的相关性较弱,故从各接口流程录制参数中提取出若干有效流程录制参数,其中,有效流程录制参数为关联值大于或等于阈值的接口流程录制参数,并将该若干有效流程录制参数作为有效流程录制数据。
例如,预先将阈值设置为0.8,如图2所示,用户在应用程序中心中选择进入保险应用程序,并在保险商城登录页面2001中点击登录按钮2002,至此用户先后的操作流程之间的关联值为0.9,由于该关联值大于阈值,故将进入保险应用程序至登录保险商城登录页面2001的操作对应的接口流程录制参数作为有效流程录制参数;另外,在保险商城登录页面2001中点击登录按钮2002后,即将跳转至保险商城主页面,此时突然出现新闻弹窗2003,用户手误点击了该新闻弹窗2003,用户先后的操作流程之间的关联值为0.1,由于该关联值小于阈值,故将点击新闻弹窗2003这一操作对应的接口流程录制参数滤除。
可选地,在检测各接口流程录制参数之间的关联值时,可将各接口流程录制参数输入参数识别网络(用于识别参数属性的机器学习模型),以通过参数识别网络提取各接口流程录制参数的参数特征,并根据参数特征对各接口流程录制参数进行分类处理,得到各接口流程录制参数的参数属性,最后根据参数属性确定各接口流程录制参数之间的关联值。
S105.根据有效流程录制数据生成接口测试用例。
其中,接口测试用例的作用在于验证接口实现的功能与性能指标与接口设计文档的一致性,接口测试用例的内容应该包括:输入参数、预期结果、实际运行结果以及备注的其他相关信息,如:测试功能点说明,测试环境说明等。其中,预期结果包括接口返回值以及接口的输出参数的内容。
可选地,为了保证生成的接口测试用例的有效性,在实际应用过程中,可通过多个用户分别使用不同电子设备进行相同操作,并对目标接口的操作流程进行录制、对有效流程录制数据进行提取,同时,判断各电子设备的输出结果的正确率(例如,各电子设备的输出结果与预期结果之间的关联值),最后筛选出输出结果的正确率最高的一组有效流程录制数据,并根据该有效流程录制数据生成接口测试用例。
例如,M用户、P用户和Q用户分别使用m电子设备、p设备和q设备登录保险商城,各用户在登录界面中输入账号和密码之后点击登录按键,与此同时,服务器对登录接口的操作流程进行录制、对有效流程录制数据进行提取,之后m设备屏幕显示的页面仍然为登录界面(正确率为0%),p设备屏幕自动跳转至待登录界面(正确率为0%),q设备屏幕自动跳转至保险商城主页面(正确率为100%),故根据q设备对应的有效流程录制数据生成接口测试用例。
S106.基于接口测试用例对目标接口进行测试。
其中,接口测试是测试系统组件间接口的一种测试,主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口。具体地,目标接口测试的重点是检查目标接口参数传递的正确性、目标接口功能实现的正确性、输出结果的正确性,以及对各种异常情况的容错处理的完整性和合理性。
进一步地,在实际软件开发过程中,由于开发周期有限,如果依靠手工来进行接口测试会容易出错,且手工测试耗时较长,导致开发效率较低,为了避免上述情况,在本实施例中,采用自动化回归的方式对目标接口进行测试,从而保证测试效率以及测试结果的准确度。
由上述可知,本申请提供的接口测试方法,首先接收基于用户操作触发的接口调用请求,并对接口调用请求进行解析以确定接口调用请求对应的目标接口,然后对目标接口的操作流程进行录制,得到接口流程录制数据,再对接口流程录制数据进行数据提取处理,得到有效流程录制数据,之后根据有效流程录制数据生成接口测试用例,最后基于接口测试用例对目标接口进行测试。由于用户无需通过手动输入接口信息的方式来编写接口测试用例,只需触发接口调用请求即可自动录制目标接口的操作流程,并根据录制的目标接口的操作流程自动生成接口测试用例,从而有效降低时间及人力成本,进而提高接口测试效率。
根据上述实施例所描述的方法,本实施例将从接口测试装置的角度进一步进行描述。
请参阅图3,图3具体描述了本申请实施例提供的接口测试装置,该接口测试装置可以包括:接收模块10、解析模块20、录制模块30、提取模块40、生成模块50和测试模块60,其中:
(1)接收模块10
接收模块10,用于接收基于用户操作触发的接口调用请求。
其中,接口调用请求包括前端接口调用请求,接收模块10具体用于:
检测基于用户操作触发的前端页面交互操作;
接收基于前端页面交互操作触发的前端接口调用请求。
进一步地,接口调用请求还包括后端接口调用请求,接收模块10还用于:
检测基于用户操作触发的后端接口调用操作;
接收后端接口调用操作对应的后端接口调用请求。
(2)解析模块20
解析模块20,用于对接口调用请求进行解析,以确定接口调用请求对应的目标接口。
(3)录制模块30
录制模块30,用于对目标接口的操作流程进行录制,得到接口流程录制数据。
其中,录制模块30具体用于:
对前端页面交互操作进行录制,得到前端操作流程;
确定前端操作流程对应的目标接口操作流程,并获取目标接口操作流程对应的目标接口操作数据;
对目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将应用程序代码作为接口流程录制数据。
具体地,录制模块30还用于:
获取前端操作流程对应的消息队列;其中,消息队列中存储有目标接口对应的请求体信息和返回体信息;
根据消息队列确定目标接口操作流程,并获取目标接口操作流程对应的目标接口操作数据。
进一步地,录制模块30还可用于:
获取后端接口调用操作对应的链路标识;
根据链路标识确定并录制目标接口操作流程;
获取目标接口操作流程对应的目标接口操作数据;
对目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将应用程序代码作为接口流程录制数据。
(4)提取模块40
提取模块40,用于对接口流程录制数据进行数据提取处理,得到有效流程录制数据。
其中,接口流程录制数据包括若干接口流程录制参数,提取模块40具体用于:
检测各接口流程录制参数之间的关联值;
若关联值小于阈值,从各接口流程录制参数中提取出若干有效流程录制参数;有效流程录制参数为关联值大于或等于阈值的接口流程录制参数;
将若干有效流程录制参数作为有效流程录制数据。
具体地,提取模块40还用于:
将各接口流程录制参数输入参数识别网络,以通过参数识别网络提取各接口流程录制参数的参数特征,并根据参数特征对各接口流程录制参数进行分类处理,得到各接口流程录制参数的参数属性;
根据参数属性确定各接口流程录制参数之间的关联值。
(5)生成模块50
生成模块50,用于根据有效流程录制数据生成接口测试用例。
(6)测试模块60
测试模块60,用于基于接口测试用例对目标接口进行测试。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
由上述可知,本申请提供的接口测试装置,首先通过接收模块10接收基于用户操作触发的接口调用请求,并通过解析模块20对接口调用请求进行解析以确定接口调用请求对应的目标接口,然后通过录制模块30对目标接口的操作流程进行录制,得到接口流程录制数据,再通过提取模块40对接口流程录制数据进行数据提取处理,得到有效流程录制数据,之后通过生成模块50根据有效流程录制数据生成接口测试用例,最后通过测试模块60基于接口测试用例对目标接口进行测试。由于用户无需通过手动输入接口信息的方式来编写接口测试用例,只需触发接口调用请求即可自动录制目标接口的操作流程,并根据录制的目标接口的操作流程自动生成接口测试用例,从而有效降低时间及人力成本,进而提高接口测试效率。
相应的,本发明实施例还提供一种接口测试系统,包括本发明实施例所提供的任一种接口测试装置,该接口测试装置可以集成在电子设备中。
其中,接收基于用户操作触发的接口调用请求;对接口调用请求进行解析,以确定接口调用请求对应的目标接口;对目标接口的操作流程进行录制,得到接口流程录制数据;对接口流程录制数据进行数据提取处理,得到有效流程录制数据;根据有效流程录制数据生成接口测试用例;基于接口测试用例对目标接口进行测试。
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
由于该接口测试系统可以包括本发明实施例所提供的任一种接口测试装置,因此,可以实现本发明实施例所提供的任一种接口测试装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
另外,本申请实施例还提供一种电子设备,该电子设备可以是智能手机或电脑等设备。如图4所示,电子设备400包括处理器401、存储器402。其中,处理器401与存储器402电性连接。
处理器401是电子设备400的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或加载存储在存储器402内的应用程序,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
在本实施例中,电子设备400中的处理器401会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:
接收基于用户操作触发的接口调用请求;
对接口调用请求进行解析,以确定接口调用请求对应的目标接口;
对目标接口的操作流程进行录制,得到接口流程录制数据;
对接口流程录制数据进行数据提取处理,得到有效流程录制数据;
根据有效流程录制数据生成接口测试用例;
基于接口测试用例对目标接口进行测试。
图5示出了本发明实施例提供的电子设备的具体结构框图,该电子设备可以用于实施上述实施例中提供的接口测试方法。
RF电路510用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。RF电路510可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。RF电路510可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for Mobile Communication,GSM)、增强型移动通信技术(Enhanced DataGSM Environment,EDGE),宽带码分多址技术(Wideband Code Division MultipleAccess,WCDMA),码分多址技术(Code Division Access,CDMA)、时分多址技术(TimeDivision Multiple Access,TDMA),无线保真技术(Wireless Fidelity,Wi-Fi)(如美国电气和电子工程师协会标准IEEE802.11a,IEEE 802.11b,IEEE802.11g和/或IEEE 802.11n)、网络电话(Voice over Internet Protocol,VoIP)、全球微波互联接入(WorldwideInteroperability for Microwave Access,Wi-Max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
存储器520可用于存储软件程序以及模块,处理器580通过运行存储在存储器520内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现存储5G能力信息的功能。存储器520可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器520可进一步包括相对于处理器580远程设置的存储器,这些远程存储器可以通过网络连接至电子设备500。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入单元530可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元530可包括触敏表面531以及其他输入设备532。触敏表面531,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面531上或在触敏表面531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器580,并能接收处理器580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面531。除了触敏表面531,输入单元530还可以包括其他输入设备532。具体地,其他输入设备532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元540可用于显示由用户输入的信息或提供给用户的信息以及电子设备500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元540可包括显示面板541,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板541。进一步的,触敏表面531可覆盖显示面板541,当触敏表面531检测到在其上或附近的触摸操作后,传送给处理器580以确定触摸事件的类型,随后处理器580根据触摸事件的类型在显示面板541上提供相应的视觉输出。虽然在图5中,触敏表面531与显示面板541是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面531与显示面板541集成而实现输入和输出功能。
电子设备500还可包括至少一种传感器550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板541的亮度,接近传感器可在电子设备500移动到耳边时,关闭显示面板541和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于电子设备500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路560、扬声器561,传声器562可提供用户与电子设备500之间的音频接口。音频电路560可将接收到的音频数据转换后的电信号,传输到扬声器561,由扬声器561转换为声音信号输出;另一方面,传声器562将收集的声音信号转换为电信号,由音频电路560接收后转换为音频数据,再将音频数据输出处理器580处理后,经RF电路510以发送给比如另一终端,或者将音频数据输出至存储器520以便进一步处理。音频电路560还可能包括耳塞插孔,以提供外设耳机与电子设备500的通信。
电子设备500通过传输模块570(例如Wi-Fi模块)可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了传输模块570,但是可以理解的是,其并不属于电子设备500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器580是电子设备500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行电子设备500的各种功能和处理数据。可选的,处理器580可包括一个或多个处理核心;在一些实施例中,处理器580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器580中。
电子设备500还包括给各个部件供电的电源590(比如电池),在一些实施例中,电源可以通过电源管理系统与处理器580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源590还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,电子设备500还可以包括摄像头(如前置摄像头、后置摄像头)、蓝牙模块等,在此不再赘述。具体在本实施例中,电子设备的显示单元是触摸屏显示器,电子设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行一个或者一个以上程序包含用于进行以下操作的指令:
接收基于用户操作触发的接口调用请求;
对接口调用请求进行解析,以确定接口调用请求对应的目标接口;
对目标接口的操作流程进行录制,得到接口流程录制数据;
对接口流程录制数据进行数据提取处理,得到有效流程录制数据;
根据有效流程录制数据生成接口测试用例;
基于接口测试用例对目标接口进行测试。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种接口测试方法中的步骤。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种接口测试方法中的步骤,因此,可以实现本发明实施例所提供的任一种接口测试方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
综上,虽然本申请已以优选实施例揭露如上,但上述优选实施例并非用以限制本申请,本领域的普通技术人员,在不脱离本申请的精神和范围内,均可作各种更动与润饰,因此本申请的保护范围以权利要求界定的范围为准。
Claims (11)
1.一种接口测试方法,其特征在于,包括:
接收基于用户操作触发的接口调用请求;
对所述接口调用请求进行解析,以确定所述接口调用请求对应的目标接口;
对所述目标接口的操作流程进行录制,得到接口流程录制数据;
对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据;
根据所述有效流程录制数据生成接口测试用例;
基于所述接口测试用例对所述目标接口进行测试。
2.根据权利要求1所述的接口测试方法,其特征在于,所述接口调用请求包括前端接口调用请求,所述接收基于用户操作触发的接口调用请求的步骤,包括:
检测基于用户操作触发的前端页面交互操作;
接收基于所述前端页面交互操作触发的所述前端接口调用请求。
3.根据权利要求1所述的接口测试方法,其特征在于,所述接口调用请求还包括后端接口调用请求,所述接收基于用户操作触发的接口调用请求的步骤,还包括:
检测基于用户操作触发的后端接口调用操作;
接收所述后端接口调用操作对应的所述后端接口调用请求。
4.根据权利要求2所述的接口测试方法,其特征在于,所述对所述目标接口的操作流程进行录制,得到接口流程录制数据的步骤,包括:
对所述前端页面交互操作进行录制,得到前端操作流程;
确定所述前端操作流程对应的目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据;
对所述目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将所述应用程序代码作为所述接口流程录制数据。
5.根据权利要求4所述的接口测试方法,其特征在于,所述确定所述前端操作流程对应的目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据的步骤,包括:
获取所述前端操作流程对应的消息队列;其中,所述消息队列中存储有所述目标接口对应的请求体信息和返回体信息;
根据所述消息队列确定目标接口操作流程,并获取所述目标接口操作流程对应的目标接口操作数据。
6.根据权利要求3所述的接口测试方法,其特征在于,所述对所述目标接口的操作流程进行录制,得到接口流程录制数据的步骤,还包括:
获取所述后端接口调用操作对应的链路标识;
根据所述链路标识确定并录制目标接口操作流程;
获取所述目标接口操作流程对应的目标接口操作数据;
对所述目标接口操作数据进行程序代码转换处理,得到应用程序代码;
将所述应用程序代码作为所述接口流程录制数据。
7.根据权利要求5或6所述的接口测试方法,其特征在于,所述接口流程录制数据包括若干接口流程录制参数,所述对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据的步骤,包括:
检测各接口流程录制参数之间的关联值;
若所述关联值小于阈值,从各接口流程录制参数中提取出若干有效流程录制参数;所述有效流程录制参数为所述关联值大于或等于所述阈值的所述接口流程录制参数;
将所述若干有效流程录制参数作为所述有效流程录制数据。
8.根据权利要求7所述的接口测试方法,其特征在于,所述检测各接口流程录制参数之间的关联值的步骤,包括:
将各接口流程录制参数输入参数识别网络,以通过所述参数识别网络提取各接口流程录制参数的参数特征,并根据所述参数特征对各接口流程录制参数进行分类处理,得到各接口流程录制参数的参数属性;
根据所述参数属性确定各接口流程录制参数之间的关联值。
9.一种接口测试装置,其特征在于,包括:
接收模块,用于接收基于用户操作触发的接口调用请求;
解析模块,用于对所述接口调用请求进行解析,以确定所述接口调用请求对应的目标接口;
录制模块,用于对所述目标接口的操作流程进行录制,得到接口流程录制数据;
提取模块,用于对所述接口流程录制数据进行数据提取处理,得到有效流程录制数据;
生成模块,用于根据所述有效流程录制数据生成接口测试用例;
测试模块,用于基于所述接口测试用例对所述目标接口进行测试。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有多条指令,所述指令适于由处理器加载以执行权利要求1至8任一项所述的接口测试方法中的步骤。
11.一种电子设备,其特征在于,包括处理器和存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据,所述处理器用于执行权利要求1至8任一项所述的接口测试方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210731876.8A CN115098371A (zh) | 2022-06-25 | 2022-06-25 | 接口测试方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210731876.8A CN115098371A (zh) | 2022-06-25 | 2022-06-25 | 接口测试方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115098371A true CN115098371A (zh) | 2022-09-23 |
Family
ID=83293756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210731876.8A Pending CN115098371A (zh) | 2022-06-25 | 2022-06-25 | 接口测试方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115098371A (zh) |
-
2022
- 2022-06-25 CN CN202210731876.8A patent/CN115098371A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160241589A1 (en) | Method and apparatus for identifying malicious website | |
CN106649126B (zh) | 一种对应用程序进行测试的方法和装置 | |
CN111078556B (zh) | 应用测试方法及装置 | |
CN109451130B (zh) | 移动终端测试方法、装置、移动终端及存储介质 | |
CN112749074B (zh) | 一种测试用例推荐方法以及装置 | |
CN110069407B (zh) | 一种应用程序的功能测试方法和装置 | |
CN108984374B (zh) | 一种数据库性能的测试方法和系统 | |
CN106709330B (zh) | 记录文件执行行为的方法及装置 | |
CN109450853B (zh) | 恶意网站判定方法、装置、终端及服务器 | |
CN110838929B (zh) | 系统错误排查方法和系统错误排查装置 | |
CN108304369B (zh) | 一种文件类型的识别方法和装置 | |
CN115080418A (zh) | 自动化测试方法、装置、电子设备和计算机可读存储介质 | |
CN113065083B (zh) | 一种页面处理方法、装置、电子设备及存储介质 | |
CN115904950A (zh) | 一种测试用例生成方法、装置、设备及存储介质 | |
CN115098371A (zh) | 接口测试方法、装置、存储介质及电子设备 | |
CN115061939A (zh) | 数据集安全测试方法、装置及存储介质 | |
CN112667868B (zh) | 一种数据检测方法以及装置 | |
CN112418835A (zh) | 一种测试网银支付流程的方法和相关装置 | |
CN114742033A (zh) | 数据解析方法、装置、存储介质及电子设备 | |
CN115495383A (zh) | 数据推送方法、装置、存储介质及电子设备 | |
CN117787207A (zh) | 标准单元库验证方法、装置、存储介质及电子设备 | |
CN115509939A (zh) | 接口测试方法、装置、存储介质及电子设备 | |
CN115907812A (zh) | 用户分类方法、装置、存储介质及电子设备 | |
CN115378791A (zh) | 数据管理方法、装置、存储介质及电子设备 | |
CN115878457A (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 |