CN110377463A - 接口测试方法、装置、终端及计算机可读存储介质 - Google Patents
接口测试方法、装置、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110377463A CN110377463A CN201910533693.3A CN201910533693A CN110377463A CN 110377463 A CN110377463 A CN 110377463A CN 201910533693 A CN201910533693 A CN 201910533693A CN 110377463 A CN110377463 A CN 110377463A
- Authority
- CN
- China
- Prior art keywords
- instruction
- parametrization
- character string
- message
- interface
- 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
- 238000010998 test method Methods 0.000 title claims abstract description 37
- 230000000007 visual effect Effects 0.000 claims abstract description 69
- 238000012360 testing method Methods 0.000 claims abstract description 38
- 238000006243 chemical reaction Methods 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 23
- 230000008859 change Effects 0.000 claims description 6
- 238000012800 visualization Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 241000209140 Triticum Species 0.000 description 1
- 235000021307 Triticum Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3041—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种接口测试方法,包括:获取在客户端的应用程序接口中进行传输的消息指令的数据包;根据数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;根据参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将可视化的字符串显示于终端界面;将可视化的字符串与参数化指令对应的预设的标准字符串进行对比;若可视化的字符串中存在与标准字符串不同的字符串,则将不同的字符串进行突出显示。本发明还提供一种接口测试装置、终端及计算机可读存储介质。本发明提出的技术方案基于可视化对消息指令进行转换,可以对基于长连接消息协议传输的消息指令直接进行可视化验证,提升测试验证的效率和质量。
Description
技术领域
本发明涉及接口测试技术领域,尤其涉及一种接口测试方法、装置、终端及计算机可读存储介质。
背景技术
为了知道应用程序的接口收发数据是否正常,需要对应用程序的接口收发的指令进行测试验证,传统的测试验证方式是客户端发送请求指令到服务端,接收服务端返回的消息指令,再根据该消息指令确定测试成功与否,而基于长连接消息协议的接口的数据收发原理是,服务端主动发送消息指令到客户端,客户端根据接收到的发送消息指令做进一步的数据处理,因此,以前的接口测试方法不再适用。
因此,如何实现基于长连接消息协议的接口测试是一种亟待解决的问题。
发明内容
本发明的主要目的在于提供一种接口测试方法、装置、终端及计算机可读存储介质,旨在解决如何实现基于长连接消息协议的接口测试的技术问题。
为实现上述目的,本发明提供一种接口测试方法,所述接口测试方法包括:
接口测试方法,其特征在于,所述接口测试方法包括:
获取在客户端的应用程序接口中进行传输的消息指令的数据包;
根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
优选地,所述根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令的步骤包括:
对所述数据包进行解析获得数据包中所有消息指令的指令头文;
根据消息指令的指令头文在参数化指令集合中进行匹配查找;
获取参数化指令集合中指令头文与消息指令的指令头文相同的参数化指令,并将所述消息指令与所述参数化指令进行对应关联。
优选地,所述根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面的步骤包括:
获取所述参数化指令的字段类型以及字段长度;
根据所述字段类型将对应的信息指令转换成对应的字段类型;
根据所述字段长度将转换后的消息指令设置为对应的长度,得到可视化的字符串,并将所述可视化的字符串显示于终端界面。
优选地,所述若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示的步骤之后,还包括:
获取终端预设的配置文件;
将所述不同的字符串以及与所述不同的字符串对应的消息指令以所述配置文件对应的发送方式发送至修复人员。
优选地,所述获取在客户端的应用程序接口中进行传输的消息指令的数据包的步骤之前,还包括:
接收测试人员输入的将应用程序的代码进行参数化的转换命令;
根据所述转换命令获取预设的规范协议以及所述应用程序的开发指令代码集合;
根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合。
优选地,所述根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合的步骤包括:
判断所述开发指令代码集合中是否存在字段类型中具有结构体的指令代码;
若所述开发指令代码集合中存在字段类型中具有结构体的指令代码,则根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,并在具有结构体的指令代码转换成的参数化指令中进行自定义,再形成参数化指令集合。
优选地,所述获取在客户端的应用程序接口中进行传输的消息指令的数据包的步骤之前,还包括:
接收测试人员输入的启动指令;
根据所述启动指令调用对应的测试脚本;
根据所述测试脚本对应用程序接口进行实时监听。
另外,本发明还提供一种接口测试装置,所述接口测试装置包括:
获取模块,所述获取模块用于获取在客户端的应用程序接口中进行传输的消息指令的数据包;
查找模块,所述查找模块用于根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
转换模块,所述转换模块用于根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
对比模块,所述对比模块用于将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
突出模块,所述突出模块用于若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
本发明还提供一种终端,包括处理器、存储器、以及存储在所述存储器上的可被所述处理器执行的接口测试程序,其中,所述接口测试程序被所述处理器执行时,实现如上所述的接口测试方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有接口测试程序,其中,所述接口测试程序被处理器执行时,实现如上所述的接口测试方法的步骤。
本发明技术方案中,获取在客户端的应用程序接口中进行传输的消息指令的数据包;根据数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;根据参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将可视化的字符串显示于终端界面;将可视化的字符串与参数化指令对应的预设的标准字符串进行对比;若可视化的字符串中存在与标准字符串不同的字符串,则将不同的字符串进行突出显示。本发明提出的技术方案基于可视化对消息指令进行转换,利用参数化指令将客户端的应用程序接口传输的消息指令转换为可视化的字符串,并显示于终端界面,以方便测试人员对字符串进行直观验证,再将可视化的字符串与标准字符串自动进行分别对比,将与标准字符串不同的字符串进行突出显示。因此,本发明可以对基于长连接消息协议传输的消息指令直接进行可视化验证,缩短开发修复问题的时间,提升测试验证的效率和质量。
附图说明
图1为本发明实施例方案中涉及的终端的硬件结构示意图;
图2为本发明接口测试方法第一实施例的流程示意图;
图3为本发明实施例中据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令的步骤的流程细化示意图;
图4为本发明实施例中根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面的步骤的流程细化示意图;
图5为本发明接口测试方法第二实施例的流程示意图;
图6为本发明接口测试方法第三实施例的流程示意图;
图7为本发明实施例中根据所述规范协议识将所述指令代码转换成可扩展标记语言格式的参数化指令的步骤的流程细化示意图;
图8为本发明接口测试方法第四实施例的流程示意图;
图9为本发明接口测试装置的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的接口测试方法主要应用于终端,该终端可以是PC、便携计算机、移动终端等具有显示和处理功能的设备。
参照图1,图1为本发明实施例方案中涉及的终端结构示意图。本发明实施例中,终端可以包括处理器1001(例如CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的硬件结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种计算机可读存储介质的存储器1005可以包括操作***、网络通信模块以及接口测试程序。
在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的接口测试程序,并执行接口测试方法的步骤。
基于上述终端的硬件结构,提出本发明接口测试方法的各个实施例。
本发明提供一种接口测试方法。
请参阅图2,在本发明第一实施例中,接口测试方法包括以下步骤:
步骤S100,获取在客户端的应用程序接口中进行传输的消息指令的数据包;
具体地,本实施例中,应用程序(如,聊天程序)基于socket协议与服务端建立长连接,来实现某些功能。服务端不间断的发送各种消息指令给客户端,客户端的应用程序在运行过程汇中不间断返回各种消息指令给服务端。终端在应用程序的运行过程中,抓取在应用程序与服务端之间交互的所有的消息指令的数据包,即,获取获取在应用程序的接口中进行传输的消息指令的数据包。本实施例中,无需模拟客户端环境,可以在客户端的应用程序运行过程中直接对传输中的数据进行抓取,不影响客户端的使用,也无需关闭客户端的应用程序,从而摆脱对客户端的依赖。
其中,需要说明的是,一个数据包可能包含有一个或多个消息指令,每个消息指令中均有一个指令头文(指令Key),指令Key中包含有“cmd”和“para”,例如,某一指令的指令头文为“cmd=2,para=4”,指令Key用以对下文中的参数化指令进行匹配查找。
步骤S200,根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
在获取到消息指令的数据包后,根据该数据包在预设的参数化指令集合中进行匹配查找,将与数据包中的消息指令对应匹配的参数化指令查找出来,用以将对应的消息指令转换。需要说明的是,预设的参数化指令集合中包含有多个参数化指令,将用以开发的原始指令代码进行转换得到的可扩展标记语言格式的参数化指令,将多有的参数指令集合在一起形成参数化指令集合。
具体地,请参照图3,图3为本发明实施例中据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令的步骤的流程细化示意图,基于上述实施例,步骤S200包括:
步骤S210,对所述数据包进行解析获得数据包中所有消息指令的指令头文;
具体地,在获取到终端与服务端进行交互的数据包后,对数据包进行解析,获取数据包中的所有的消息指令,再获取所有的消息指令的指令key,将消息指令的指令key称为第一指令头文。
步骤S220,根据消息指令的指令头文在参数化指令集合中进行匹配查找;
具体地,在获取到消息指令的指令后名称后,根据消息指令的指令头文在参数化指令集合中进行匹配查找,即,遍历参数化指令集合中的所有的参数化指令,将消息指令的指令头文与参数化指令的指令头文一一对比,查找与消息指令的指令头文相同的参数化指令的指令头文。
步骤S230,获取参数化指令集合中指令头文与消息指令的指令头文相同的参数化指令,并将所述消息指令与所述参数化指令进行对应关联。
具体地,在对参数化指令集合中的参数化指令进行一一查找匹配后,获取参数化指令集合合中指令头文与消息指令的指令头文相同的参数化指令,再将查找到的指令头文一致的消息指令与参数化指令进行对应关联。
步骤S300,根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
在获取到与消息指令对应的参数化指令后,根据该参数化指令对数据包中对应的消息指令进行转换,得到可视化的字符串,在得到可视化的字符串后,将可视化的字符串显示于终端界面,以供测试人员对字符串进行测试验证。
具体地,请参照图4,图4为本发明实施例中根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面的步骤的流程细化示意图,基于上述实施例,步骤S300包括:
步骤S310,获取所述参数化指令的字段类型以及字段长度;
参数化指令中定义有字段类型和字段长度,其中,参数化指令中,field表示定义结构体中的字段;当field的属性为type时,表示字段类型,字段类型包括ushort、uint、byte、string等类型,当字段类型为以符号“:”开头时,表明该字段类型也是一个结构体;field的属性为length时,表示字段的长度,字段的长度可以直接以数值定义长度,也可以符合“:”开头,一般以“:size”形式,size是指向当前结构体的字段size所定义的长度。在需要根据参数化指令对消息指令进行转换时,可以获取参数化指令的字段类型以及字段长度。
步骤S320,根据所述字段类型将对应的消息指令转换成对应的字段类型;
具体地,在获取到参数化指令中的字段类型和字段长度后,根据获取的字段类型将数据包中的消息指令转换缓冲能对应的字段类型,例如,当字段类型为I型时,将消息指令也转换成I型。
步骤S330,根据所述字段长度将转换后的消息指令设置为对应的长度,得到可视化的字符串,并将所述可视化的字符串显示于终端界面。
具体地,在将消息指令转换成对应的字段类型后,根据获取的字段长度将转换后的消息指令设置成对应的长度,得到可视化的字符串,并将可视化的字符串显示于终端界面,以供测试人员进行直观验证。
步骤S400,将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
具体地,每一个传输的消息指令都会对应有一个预期的响应,因此,在终端中可以预设与参数化消息指令对应的标准字符串,在获得可视化的字符串后,将可视化的字符串与参数化指令对应的预设的标准字符串进行对比,查找可视化字符串中是否存在与标准字符串不同的字符串,以测试接口对应功能的实现正确与否。
步骤S500,若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
如果可视化的字符串中存在与标准字符串不同的字符串,则可以对该不同的字符串进行突出显示,例如,可以对该不同的字符串进行标红显示或加粗显示等,以提示测试人员存在该不同的字符串,即,接口传输的消息指令存在问题。如果可视化的字符串中不存在与标准字符串不同的字符串,则不对显示于终端界面的可视化字符串进行特殊处理。
本发明技术方案中,获取在客户端的应用程序接口中进行传输的消息指令的数据包;根据数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;根据参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串并将可视化的字符串显示于终端界面;将可视化的字符串与参数化指令对应的预设的标准字符串进行对比;若可视化的字符串中存在与标准字符串不同的字符串,则将不同的字符串进行突出显示。本发明提出的技术方案基于可视化对消息指令进行转换,利用参数化指令将客户端的应用程序接口传输的消息指令转换为可视化的字符串,并显示于终端界面,以方便测试人员对字符串进行直观验证,再将可视化的字符串与标准字符串自动进行分别对比,将与标准字符串不同的字符串进行突出显示。因此,本发明可以对基于长连接消息协议传输的消息指令直接进行可视化验证,缩短开发修复问题的时间,提升测试验证的效率和质量。
进一步地,请参照图5,图5为本发明接口测试方法第二实施例的流程示意图,基于第一实施例,步骤S500之后,还包括:
步骤S600,获取终端预设的配置文件;
具体地,如果可视化的字符串存在存在与标准字符串不同的字符串,那么,说明需要测试人员进行开发修复,因此,可以获得终端中预设的配置文件,对配置文件进行解析可以获得对应的发送方式以及修复人员。其中,发送方式可以包括邮件发送、短信发送等。
步骤S700,将所述不同的字符串以及与所述不同的字符串对应的消息指令以所述配置文件对应的发送方式发送至修复人员。
在获取到发送方式后,将不同的字符串以及与不同的字符串对应的消息指令以以配置文件对应的发送方式发送至修复人员,修复人员可以直接定位到哪些指令存在问题,直接找到存在问题的字符串对应的指令,从而提高测试验证定位问题的精度,从而缩短开发修复的时间。
进一步地,请参照图6,图6为本发明接口测试方法第三实施例的流程示意图,基于第一实施例,步骤S100之前,还包括:
步骤S110,接收测试人员输入的将应用程序的代码进行参数化的转换命令;
在需要对客户端的应用程序接口传输的数据进行测试验证之前,可以先对用于开发该应用程序的原始的指令代码进行格式的转换。具体地,在需要对某一应用程序进行测试验证时,终端可以接收测试人员输入将应用程序的代码进行参数化的转换命令。
步骤S120,根据所述转换命令获取预设的规范协议以及所述应用程序的开发指令代码集合;
在获取到将应用程序的代码进行参数化的转换命令,根据该转换命令获取预设的规范协议以及该应用程序的开发指令代码集合。其中,预设的规范协议可以包括标准协议和自定义的规范协议,标准协议可以为报文协议等,自定义的规范协议由用户根据实际需求定义。应用程序的开发指令代码集合是基于socket协议的指令码样式,用以对应用程序进行开发。
步骤S130,根据所述规范协议识将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合。
在获取到规范协议后,根据规范协议识别出开发指令代码集合中指令代码的指令头文(cmd和para)、字段类型以及字段长度;生成包括指令头文(cmd和para)、字段类型以及字段长度的可扩展标记语言格式(XML格式)的参数化指令,形成参数化指令集合。
具体地,请参照图7,图7为本发明实施例中根据所述规范协议识将所述指令代码转换成可扩展标记语言格式的参数化指令的步骤的流程细化示意图,基于第三实施例,步骤S130包括:
步骤S131,判断所述开发指令代码集合中是否存在字段类型中具有结构体的指令代码;
具体地,在获取到开发指令代码后,判断获取到的开发指令代码集合中是否存在字段类型中具有结构体的指令代码,即,当字段类型为以符号“:”开头时,表明该字段类型是一个结构体,例如,<feild type=":stMQ[]"length=":size_"name="list_"/>,stMQ[]是子结构体。
步骤S132,若所述开发指令代码集合中存在字段类型中具有结构体的指令代码,则根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,并在具有结构体的指令代码转换成的参数化指令中进行自定义,再形成参数化指令集合;
具体地,如果在开发指令代码集中存在字段类型中具有结构体的指令代码,则根据规范协议将开发指令代码集中的指令代码转换成可扩展标记语言格式的参数化指令后,需要在字段类型中具有结构体的指令代码转换成的参数化指令中进行自定义,以形成规范的参数化指令,自定义参数化指令后再将所有的参数化指令汇总在一起形成参数化指令集合。如果在开发指令代码集合中不存在字段类型中具有结构体的指令代码,则直接根据规范协议将开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合即可。
例如,当开发指令代码为:
cmd=2para=14,
{public struct stRoomResMicQueue
public ushort cmd;
public ushort para;
public uint room_id_;
public ushort size_;
public stMQ[]list_;
}
{public struct stMQ
Public byte index;//麦序
Public uint userid;//用户
}
转换成的参数化指令为:
<struct cmd="2"para="14"name="stRoomResMicQueue"description="返回房间麦序列表">
<feild type="ushort"name="cmd"/>
<feild type="ushort"name="para"/>
<feild type="uint"name="room_id_"/>
<feild type="ushort"name="size_"/>
<feild type=":stMQ[]"length=":size_"name="list_"/>
</struct>
</struct>
<struct cmd="-999"para="-999"name="stMQ"description="">
<feild type="byte"name="index"/>
<feild type="uint"name="userid"/>
</struct>
其中,struct为定义结构体;struct中的属性cmd para是指令的唯一key;structt中的属性description是指令的描述。field的属性name是指字段的名称。开发指令代码的字段类型中具有结构体stMQ[],在转换成的参数化指令中自定义cmd="-999"para="-999"。
进一步地,请参照图8,图8为本发明接口测试方法第四实施例的流程示意图,基于第一实施例,步骤S100之前还包括:,
步骤S140,接收测试人员输入的启动指令;
当测试人员需要对客户端的某一应用程序的接口进行测试时,需要向终端输入开启对该应用程序的接口进行监听的启动指令,终端将接收到测试人员输入的启动指令。
步骤S150,根据所述启动指令调用对应的测试脚本;
在终端中将预先存储有测试人员撰写的测试脚本,终端可以通过该测试脚本在应用程序的接口中传输的指令进行监听。具体地,终端在接收到启动指令后,在后台调取对应的测试脚本。
步骤S160,根据所述测试脚本对应用程序接口进行实时监听。
具体地,根据调取的测试脚本对应用应用程序接口进行实时监听,以直接实时抓取到应用程序与服务端之间交互的所有的消息指令的数据包,不会影响到客户端中应用程序的使用。
此外,请参照图9,本发明还提供一种接口测试装置10,所述接口测试装置10包括:
获取模块20,所述获取模块用于获取在客户端的应用程序接口中进行传输的消息指令的数据包;
查找模块30,所述查找模块用于根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
转换模块40,所述转换模块用于根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
对比模块50,所述对比模块用于将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
突出模块60,所述突出模块用于若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
进一步地,所述查找模块30还用于:
对所述数据包进行解析获得数据包中所有消息指令的指令头文;
根据消息指令的指令头文在参数化指令集合中进行匹配查找;
获取参数化指令集合中指令头文与消息指令的指令头文相同的参数化指令,并将所述消息指令与所述参数化指令进行对应关联。
进一步地,所述转换模块40还用于:
获取所述参数化指令的字段类型以及字段长度;
根据所述字段类型将对应的信息指令转换成对应的字段类型;
根据所述字段长度将转换后的消息指令设置为对应的长度,得到可视化的字符串,并将所述可视化的字符串显示于终端界面。
进一步地,所述接口测试装置10还包括:
所述获取模块还用于获取终端预设的配置文件;
发送模块,所述发送模块用于将所述不同的字符串以及与所述不同的字符串对应的消息指令以所述配置文件对应的发送方式发送至修复人员。
进一步地,所述接口测试装置10还包括:
第一接收模块,所述第一接收模块用于接收测试人员输入的将应用程序的代码进行参数化的转换命令;
所述获取模块还用于根据所述转换命令获取预设的规范协议以及所述应用程序的开发指令代码集合;
所述转换模块还用于根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合。
进一步地,所述接口测试装置10还包括:
判断模块,所述判断模块用于判断所述开发指令代码集合中是否存在字段类型中具有结构体的指令代码;
所述转换模块还用于若所述开发指令代码集合中存在字段类型中具有结构体的指令代码,则根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,并在具有结构体的指令代码转换成的参数化指令中进行自定义,再形成参数化指令集合。
进一步地,所述接口测试装置10还包括:
第二接收模块,所述第二接收模块用于接收测试人员输入的启动指令;
调用模块,所述调用模块用于根据所述启动指令调用对应的测试脚本;
监听模块,所述监听模块用于根据所述测试脚本对应用程序接口进行实时监听。
其中,上述接口测试装置10中各个模块与上述接口测试方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有接口测试程序,其中,接口测试程序被处理器执行时,实现如上述的接口测试方法的步骤。
其中,接口测试程序被执行时所实现的方法可参照本发明接口测试方法的各个实施例,此处不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (10)
1.一种接口测试方法,其特征在于,所述接口测试方法包括:
获取在客户端的应用程序接口中进行传输的消息指令的数据包;
根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
2.如权利要求1所述的接口测试方法,其特征在于,所述根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令的步骤包括:
对所述数据包进行解析获得数据包中所有消息指令的指令头文;
根据消息指令的指令头文在参数化指令集合中进行匹配查找;
获取参数化指令集合中指令头文与消息指令的指令头文相同的参数化指令,并将所述消息指令与所述参数化指令进行对应关联。
3.如权利要求1所述的接口测试方法,其特征在于,所述根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面的步骤包括:
获取所述参数化指令的字段类型以及字段长度;
根据所述字段类型将对应的信息指令转换成对应的字段类型;
根据所述字段长度将转换后的消息指令设置为对应的长度,得到可视化的字符串,并将所述可视化的字符串显示于终端界面。
4.如权利要求1-3中任一项所述的接口测试方法,其特征在于,所述若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示的步骤之后,还包括:
获取终端预设的配置文件;
将所述不同的字符串以及与所述不同的字符串对应的消息指令以所述配置文件对应的发送方式发送至修复人员。
5.如权利要求1-3中任一项所述的接口测试方法,其特征在于,所述获取在客户端的应用程序接口中进行传输的消息指令的数据包的步骤之前,还包括:
接收测试人员输入的将应用程序的代码进行参数化的转换命令;
根据所述转换命令获取预设的规范协议以及所述应用程序的开发指令代码集合;
根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合。
6.如权利要求5所述的接口测试方法,其特征在于,所述根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,形成参数化指令集合的步骤包括:
判断所述开发指令代码集合中是否存在字段类型中具有结构体的指令代码;
若所述开发指令代码集合中存在字段类型中具有结构体的指令代码,则根据所述规范协议将所述开发指令代码集合中的指令代码转换成可扩展标记语言格式的参数化指令,并在具有结构体的指令代码转换成的参数化指令中进行自定义,再形成参数化指令集合。
7.如权利要求1-3中任一项所述的接口测试方法,其特征在于,所述获取在客户端的应用程序接口中进行传输的消息指令的数据包的步骤之前,还包括:
接收测试人员输入的启动指令;
根据所述启动指令调用对应的测试脚本;
根据所述测试脚本对应用程序接口进行实时监听。
8.一种接口测试装置,其特征在于,所述接口测试装置包括:
获取模块,所述获取模块用于获取在客户端的应用程序接口中进行传输的消息指令的数据包;
查找模块,所述查找模块用于根据所述数据包在预设的参数化指令集合中进行查找,获得对应的参数化指令;
转换模块,所述转换模块用于根据所述参数化指令对数据包中对应的消息指令进行转换得到可视化的字符串,并将所述可视化的字符串显示于终端界面;
对比模块,所述对比模块用于将所述可视化的字符串与所述参数化指令对应的预设的标准字符串进行对比;
突出模块,所述突出模块用于若所述可视化的字符串中存在与所述标准字符串不同的字符串,则将所述不同的字符串进行突出显示。
9.一种终端,其特征在于,包括处理器、存储器、以及存储在所述存储器上的可被所述处理器执行的接口测试程序,其中,所述接口测试程序被所述处理器执行时,实现如权利要求1至7中任一项所述的接口测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有接口测试程序,其中,所述接口测试程序被处理器执行时,实现如权利要求1至7中任一项所述的接口测试方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910533693.3A CN110377463A (zh) | 2019-06-19 | 2019-06-19 | 接口测试方法、装置、终端及计算机可读存储介质 |
PCT/CN2019/122070 WO2020253124A1 (zh) | 2019-06-19 | 2019-11-29 | 接口测试方法、装置、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910533693.3A CN110377463A (zh) | 2019-06-19 | 2019-06-19 | 接口测试方法、装置、终端及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110377463A true CN110377463A (zh) | 2019-10-25 |
Family
ID=68249332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910533693.3A Pending CN110377463A (zh) | 2019-06-19 | 2019-06-19 | 接口测试方法、装置、终端及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110377463A (zh) |
WO (1) | WO2020253124A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020253124A1 (zh) * | 2019-06-19 | 2020-12-24 | 深圳壹账通智能科技有限公司 | 接口测试方法、装置、终端及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000022517A1 (en) * | 1998-10-13 | 2000-04-20 | Codagen Technologies Corp. | Component-based source code generator |
CN1524217A (zh) * | 2000-06-22 | 2004-08-25 | 分布式计算服务平台 | |
US20100042975A1 (en) * | 2008-08-13 | 2010-02-18 | Honeywell International Inc. | Message logging for software applications |
EP2453370A1 (en) * | 2010-11-12 | 2012-05-16 | Business Objects Software Limited | Method and system for specifying, preparing and using parameterized database queries |
CN107908541A (zh) * | 2017-07-26 | 2018-04-13 | 平安壹钱包电子商务有限公司 | 接口测试方法、装置、计算机设备及存储介质 |
CN109101415A (zh) * | 2018-06-25 | 2018-12-28 | 平安科技(深圳)有限公司 | 基于数据库比对的接口测试方法、***、设备和存储介质 |
CN109614309A (zh) * | 2018-10-22 | 2019-04-12 | 中国平安财产保险股份有限公司 | 比较测试结果的方法、装置、计算机设备以及存储介质 |
CN109766262A (zh) * | 2018-12-15 | 2019-05-17 | 深圳壹账通智能科技有限公司 | 接口数据处理方法、自动化测试方法、装置、设备和介质 |
CN109902274A (zh) * | 2019-02-22 | 2019-06-18 | 今天东翼科技有限公司 | 一种将json字符串转化为thrift二进制流的方法及*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030083838A1 (en) * | 2001-10-31 | 2003-05-01 | Barrett Richard M. | Wireless test and measurement method |
CN101378548A (zh) * | 2008-09-23 | 2009-03-04 | 中兴通讯股份有限公司 | At命令与业务消息的转换实现方法及装置 |
CN108009136B (zh) * | 2017-10-31 | 2021-09-21 | 努比亚技术有限公司 | 一种消息修正的方法及移动终端、计算机可读存储介质 |
CN110377463A (zh) * | 2019-06-19 | 2019-10-25 | 深圳壹账通智能科技有限公司 | 接口测试方法、装置、终端及计算机可读存储介质 |
-
2019
- 2019-06-19 CN CN201910533693.3A patent/CN110377463A/zh active Pending
- 2019-11-29 WO PCT/CN2019/122070 patent/WO2020253124A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000022517A1 (en) * | 1998-10-13 | 2000-04-20 | Codagen Technologies Corp. | Component-based source code generator |
CN1524217A (zh) * | 2000-06-22 | 2004-08-25 | 分布式计算服务平台 | |
US20100042975A1 (en) * | 2008-08-13 | 2010-02-18 | Honeywell International Inc. | Message logging for software applications |
EP2453370A1 (en) * | 2010-11-12 | 2012-05-16 | Business Objects Software Limited | Method and system for specifying, preparing and using parameterized database queries |
CN107908541A (zh) * | 2017-07-26 | 2018-04-13 | 平安壹钱包电子商务有限公司 | 接口测试方法、装置、计算机设备及存储介质 |
CN109101415A (zh) * | 2018-06-25 | 2018-12-28 | 平安科技(深圳)有限公司 | 基于数据库比对的接口测试方法、***、设备和存储介质 |
CN109614309A (zh) * | 2018-10-22 | 2019-04-12 | 中国平安财产保险股份有限公司 | 比较测试结果的方法、装置、计算机设备以及存储介质 |
CN109766262A (zh) * | 2018-12-15 | 2019-05-17 | 深圳壹账通智能科技有限公司 | 接口数据处理方法、自动化测试方法、装置、设备和介质 |
CN109902274A (zh) * | 2019-02-22 | 2019-06-18 | 今天东翼科技有限公司 | 一种将json字符串转化为thrift二进制流的方法及*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020253124A1 (zh) * | 2019-06-19 | 2020-12-24 | 深圳壹账通智能科技有限公司 | 接口测试方法、装置、终端及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020253124A1 (zh) | 2020-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106155891B (zh) | 接口测试方法、接口描述数据库生成方法及装置 | |
CN109446071A (zh) | 接口测试方法、接口测试装置、电子设备及存储介质 | |
CN110389898A (zh) | 测试策略的获取方法、装置、终端及计算机可读存储介质 | |
CN110442524A (zh) | 一种针对带有认证授权的web服务接口测试方法和装置 | |
CN104268079B (zh) | 一种pos应用程序测试的方法及*** | |
CN109726108B (zh) | 基于模拟数据的前端代码测试方法、装置、***和介质 | |
CN108459850B (zh) | 生成测试脚本的方法、装置及*** | |
CN111813701B (zh) | 基于http的接口测试方法、装置、计算机设备及存储介质 | |
CN108345449A (zh) | 一种信息处理方法、装置、存储介质及计算机设备 | |
CN108683704A (zh) | 一种Socket网络通信测试方法及其***、存储介质 | |
CN113238740B (zh) | 代码生成方法、代码生成装置、存储介质及电子设备 | |
KR20140106857A (ko) | 프로토콜 적합성 검증 방법, 이를 실행하는 장치 및 이를 실행하는 시스템 | |
CN105117340B (zh) | 用于iOS浏览器应用质量评估的URL检测方法和装置 | |
CN105049280B (zh) | 业务管理平台的接口行为模拟测试***和方法 | |
CN106201865A (zh) | 一种应用程序编程接口api测试方法、装置及终端设备 | |
CN111723019A (zh) | 接口的调试方法及*** | |
CN106301976A (zh) | 一种变电站智能化调度信息自动化测试方法 | |
CN110377463A (zh) | 接口测试方法、装置、终端及计算机可读存储介质 | |
CN113391992A (zh) | 测试数据的生成方法和装置、存储介质及电子设备 | |
CN116346660A (zh) | 基于依赖替换服务的数据处理方法、装置、设备及介质 | |
CN111506305A (zh) | 工具包生成方法、装置、计算机设备及可读存储介质 | |
CN105446867B (zh) | 一种测试数据的生成方法及装置 | |
CN103457957B (zh) | 一种具有自适应功能的网络渗透测试***及方法 | |
CN116306479A (zh) | 基于uvm的以太网phy通用验证平台及验证方法 | |
CN113645052B (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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20240209 |