CN105099811B - 一种接口测试方法和装置 - Google Patents
一种接口测试方法和装置 Download PDFInfo
- Publication number
- CN105099811B CN105099811B CN201510300593.8A CN201510300593A CN105099811B CN 105099811 B CN105099811 B CN 105099811B CN 201510300593 A CN201510300593 A CN 201510300593A CN 105099811 B CN105099811 B CN 105099811B
- Authority
- CN
- China
- Prior art keywords
- test parameter
- destination server
- address information
- test
- parameter
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
Landscapes
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种接口测试方法和装置,该方法可包括:获取被测接口的测试参数和目标服务器的地址信息;使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。本发明可以降低接口测试的成本。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种接口测试方法和装置。
背景技术
随着互联网技术的发展,开发的软件项目工程也越来越多,在软件项目工程中接口测试是一项非常重要的测试环节。接口测试主要测试这些软件项目工程(或者理解为软件系统)对外部提供的接口,以验证这些接口的正确性和稳定性。接口测试的重点是要检查数据的交换,具体是通过向服务器传递接口的测试参数,再接收服务器返回的返回结果,通过验证该返回结果的正确性,以完成对接口测试。
然而,现在接口测试都是人工输入接口的测试参数,在接收到服务器返回的返回结果后,再人工校验返回结果的准确性。该测试过程中开发人员的工作量大,且当接口本身业务逻辑比较复杂时,返回的结果繁多时,开发人员的工作量就更多。
可见,目前的接口测试由于开发人员的工作量很大,从而导致接口测试的成本较高。
发明内容
本发明实施例提供了一种接口测试方法和装置,可以降低接口测试的成本。
第一方面,本发明提供一种接口测试方法,其特征在于,包括:
获取被测接口的测试参数和目标服务器的地址信息;
使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;
接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;
将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
第二方面,本发明提供一种接口测试装置,包括:获取单元、发送单元、接收单元和比较单元,其中:
所述获取单元,用于获取被测接口的测试参数和目标服务器的地址信息;
所述发送单元,用于使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;
接收单元,用于接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;
比较单元,用于将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
上述技术方案中,获取被测接口的测试参数和目标服务器的地址信息;使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。由于该技术方案可以不需要接收用户输入的操作而自动完成被测接口的测试,从而相比现有技术本发明可以降低接口测试的成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种接口测试方法的流程示意图;
图2是本发明实施例提供的另一种接口测试方法的流程示意图;
图3是本发明实施例提供的一种接口测试装置的结构示意图;
图4是本发明实施例提供的另一种接口测试装置的结构示意图;
图5是本发明实施例提供的另一种接口测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,被测接口可以是互联网技术领域中任一应用程序中用于进行数据交换的接口,例如:用户终端上与网络侧(例如:服务器)进行数据交换的接口,或者服务器上与用户侧(例如:用户终端)进行数据交换的接口。上述应用程序包括但不限于浏览器应用程序、聊天应用程序、游戏应用程序、音视频播放应用程序等等。
请参阅图1,图1是本发明实施例提供的一种接口测试方法的流程示意图,如图1所示,包括以下步骤:
101、获取被测接口的测试参数和目标服务器的地址信息。
可选的,上述被测接口的测试参数可以是用于测试该被测接口的功能而使用的测试参数。例如:上述被测接口为某一聊天应用程序的登录接口,那么上述测试参数就可以包括登录账号和登录账号的密码信息,以通过登录账号和密码信息测试该登录接口是否准确或者稳定。另外,上述目标服务器的地址信息可以是目标服务器的IP地址。
102、使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息。
可选的,上述请求消息可以包括统一资源定位符(Uniform Resource Locator,URL)消息,该URL消息中的URL可以包括上述目标服务器的地址信息,这样通过该URL消息就可以将上述测试参数发送给目标服务器。当然,本实施例中,还可以是以数据包的形式发送上述请求消息,该数据包中以上述目标服务器的地址信息为作目的地址,从而可以实现将上述测试参数发送给目标服务器。
103、接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果。
本实施例中,当目标服务器接收到上述请求消息后,就会响应该请求消息,可以采用目标服务器预先为上述测试参数设定的测试流程对该测试参数进行测试,以获取该测试参数的响应结果,并返回该响应结果。目标服务器具体可以是预先为多个接口的测试参数设置对应的测试流程,当接收到某一接口的测试参数时,就可以采用该接口对应的测试流程对该接口的测试参数进行测试。例如:上述被测接口为某一聊天应用程序的登录接口,那么上述测试参数就可以包括登录账号和登录账号的密码信息,这样服务器接收到该请求消息后,就会使用对登录接口对应的测试流程对登录账号和密码信息的验证,当该登录接口正确,且登录账号和密码信息正确时,就会返回登录成功的结果。
104、将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
其中,上述预设期望结果可以是开发人员预先输入的,并存储在本地。另外,上述预设期望结果可以为当上述被测接口准确时,向上述目标服务器上传上述测试参数时,目标服务器对测试参数进行测试后就会返回的响应结果。这样当上述响应结果与上述期望结果一致时,就可以表示被测接口准确,当不一致时,就可以表示被测接口不准确或者不稳定。
通过上述步骤可以实现向服务器上传到上述请求消息,并接收服务器返回的响应结果,从而将响应结果与期望结果进行比较,通过比较结果识别被测接口的准确性。从而实现整个测试过程可以自动完成,而不需要人为的参与。
可选的,所述方法还可以输出上述比较结果,以告诉开发人员被测接口进行接口测试的测试结果。
可选的,上述方法可以应用于任何具备通信功能的设备,例如:个人计算机(Personal Computer,PC)、笔记本电脑、平板电脑、手机等设备。
上述技术方案中,获取被测接口的测试参数和目标服务器的地址信息;使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。由于该技术方案可以不需要接收用户输入的操作而自动完成被测接口的测试,从而相比现有技术本发明可以降低接口测试的成本。
请参阅图2,图2是本发明实施例提供的另一种接口测试方法的流程示意图,如图2所示,包括以下步骤:
201、获取存储有被测接口的测试参数和目标服务器的地址信息的存储文件。
可选的,上述存储文件可以是可扩展标记语言(eXtensible Markup Language,XML)文件,但本实施例中上述存储文件还可以是其他文件,例如:TXT文件或者本地文件等等。
另外,上述测试参数和目标服务器的地址信息和可以是接收用户在上述存储文件中输入的测试参数和目标服务器的地址信息,并存储该存储文件。
202、解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息。
可选的,上述存储文件可以包括至少一个接口的测试参数,以及对应的服务器的地址信息。这样当需要对上述被测接口进行测试时,就可以解析该存储文件,并读取被测接口对应的测试参数和目标服务器的地址信息。
可选的,上述存储文件中还可以存储有多个服务器的地址信息,例如,上述被测接口需要采用多个服务器进行测试时,该存储文件中可以存储这多个服务器的地址信息。通过读取不同的服务器的地址信息实现采用不同的服务器进行测试。从而可以自动采用多个服务器对被测接口进行测试。例如:需要采用目标服务器进行测试时,上述解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息的步骤,可以包括:
解析所述存储文件,读取所述测试参数,以及从所述多个服务器的地址信息中选择所述目标服务器的地址信息。
另外,还可以同时采用多个服务器对被测接口进行测试,或者依次采用多个服务器对被测接口进行测试。
203、生成包括所述目标服务器的地址信息和测试参数的统一资源定位符URL消息,向所述目标服务器发送所述URL消息,其中,所述目标服务器的地址信息为所述URL消息的目的地址。
可选的,URL消息可以是超文本传输协议(Hypertext transfer protocol,HTTP)消息,另外,上述URL消息可以包括URL。
另外,当目标服务器接收到上述URL消息后,目标服务器可以通过上述地址信息识别出该URL消息是发送给目标服务器,从而目标服务器就可以从该URL消息中提取出上述测试参数。
可选的,上述生成的URL消息可以是get请求类型的URL消息,或者可以是post请求类型的URL消息。例如:上述生成包括所述测试参数和目标服务器的地址信息的URL消息的步骤,可以包括:
将所述测试参数和所述目标服务器的地址信息拼接成URL消息。
具体可以是拼接成get请求类型的URL消息,或者可以是拼接成post请求类型的URL消息。例如:上述将所述测试参数和所述目标服务器的地址信息拼接成URL消息的步骤,可以包括:
将所述测试参数和所述目标服务器的地址信息拼接成URL,生成包括所述URL的URL消息。
这样可以实现将测试参数直接填加在URL上,可以实现get请求类型的URL消息。
例如:上述生成包括所述目标服务器的地址信息和测试参数的URL消息的步骤,可以包括:
将所述目标服务器的地址信息和所述测试参数中的第一参数信息拼接成URL,以及生成包括所述测试参数除所述第一参数信息之外的所有参数的消息内容,并生成包括所述URL和所述消息内容的URL消息。
其中,上述第一参数信息可以测试参数中的非隐私信息,而测试参数除所述第一参数信息之外的所有参数为隐私信息。另外,由于URL中的信息容易泄露,这样可以将测试参数中非隐私信息携带在URL中,而将测试参数中的隐私信息携带在URL消息的消息内容中,以防止隐私信息的泄露。
例如:上述生成包括所述目标服务器的地址信息和测试参数的URL消息的步骤,可以包括:
将所述目标服务器的地址信息作为URL,以及生成包括所述测试参数的消息内容,并生成包括所述URL和所述消息内容的URL消息。
可以实现URL只包括目标服务器的地址信息,而测试参数采用URL消息的消息内容携带,从而实现post请求类型的URL消息,以保护测试参数的安全或者隐私。
204、接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果。
205、将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
可选的,上述存储文件中还可以包括预设期望结果,步骤205包括:
从所述存储文件中读取所述预设期望结果,并将所述返回结果与所述预设期望结果进行比较。
这样可以实现在整个测试过程中只需要输入存储文件,或者在上述存储文件注输入上述测试参数、期望结果和目标服务器的地址信息就可以自动完成对被测接口的测试。
另外,上述读取预设期望结果还可以是通过读取数据库的方式读取上述预设期望结果,例如:对于不同的接口配置有不同的标识,当对被测接口进行测试时,且获取被测接口对应的响应结果时,就可以在数据库中读取该被测接口对应的预设期望结果与返回结果进行比较,通过比较结果表示被测接口的测试结果。
可选的,上述步骤205可以包括:
通过断言机制在所述存储文件中选择测试参数对应的预设期望结果,并使用所述断言机制将所述返回结果与所述预设期望结果进行比较得到比较结果。
其中,上述断言机制可以是自动去获取上述预设期望结果,并将获取的预设期望结果与返回结果进行比较,再输出比较结果。采用断言机制进行比较可以提高比较的效率和准确性。
可选的,上述方法可以应用于单元测试框架中,即在该单元测试框架中可以实现上述方法,例如:在Nunit单元测试框架中实现上述方法。这样整个测试过程只需要获取上述存储文件或者在上述存储文件中输入上述测试参数、预设期望结果和目标服务器的地址信息后,点击单元测试框架中的运行按钮就可以实现对被测接口进行接口测试。另外,当需要对多个接口进行接口测试时上述方法可以连续对多个接口进行接口测试。且当被测接口进行修改后,也可以直接采用上述方法进行回归测试。
另外,通过上述方法可以实现简化接口测试的过程,这样更多的开发人员实现采用上述方法进行接口测试,以降低接口测试的门槛。
本实施例中,在图1所示的实施例的基础上增加了多种可选的实施方式,且都可以实现降低接口测试的成本,另外,本实施例中的实施方式都可以应用于图1所示的实施例中。
下面为本发明装置实施例,本发明装置实施例用于执行本发明方法实施例一至二实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例一和实施例二。
请参阅图3,图3是本发明实施例提供的一种接口测试装置的结构示意图,如图3所示,包括:获取单元31、发送单元32、接收单元33和比较单元34,其中:
获取单元31,用于获取被测接口的测试参数和目标服务器的地址信息。
发送单元32,用于使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息。
可选的,上述请求消息可以包括URL消息,该URL消息中的URL可以包括上述目标服务器的地址信息,这样通过该URL消息就可以将上述测试参数发送给目标服务器。当然,本实施例中,还可以是以数据包的形式发送上述请求消息,该数据包中以上述目标服务器的地址信息为作目的地址,从而可以实现将上述测试参数发送给目标服务器。
接收单元33,用于接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果。
本实施例中,当目标服务器接收到上述请求消息后,就会响应该请求消息,可以采用目标服务器预先为上述测试参数设定的测试流程对该测试参数进行测试,以获取该测试参数的响应结果,并返回该响应结果。目标服务器具体可以是预先为多个接口的测试参数设置对应的测试流程,当接收到某一接口的测试参数时,就可以采用该接口对应的测试流程对该接口的测试参数进行测试。例如:上述被测接口为某一聊天应用程序的登录接口,那么上述测试参数就可以包括登录账号和登录账号的密码信息,这样服务器接收到该请求消息后,就会使用对登录接口对应的测试流程对登录账号和密码信息的验证,当该登录接口正确,且登录账号和密码信息正确时,就会返回登录成功的结果。
比较单元34,用于将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
其中,上述预设期望结果可以是开发人员预先输入的,并存储在本地。另外,上述预设期望结果可以为当上述被测接口准确时,向上述目标服务器上传上述测试参数时,目标服务器对测试参数进行测试后就会返回的响应结果。这样当上述响应结果与上述期望结果一致时,就可以表示被测接口准确,当不一致时,就可以表示被测接口不准确或者不稳定。
可选的,上述装置可以应用于任何具备通信功能的设备,例如:PC、笔记本电脑、平板电脑、手机等设备。
上述技术方案中,获取被测接口的测试参数和目标服务器的地址信息;使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。由于该技术方案可以不需要接收用户输入的操作而自动完成被测接口的测试,从而相比现有技术本发明可以降低接口测试的成本。
请参阅图4,图4是本发明实施例提供的另一种接口测试装置的结构示意图,如图4所示,包括:获取单元41、发送单元42、接收单元43和比较单元44,其中:
获取单元41包括:
获取子单元411,用于获取存储有被测接口的测试参数和目标服务器的地址信息的存储文件;
读取单元412,用于解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息。
发送单元42,用于生成包括所述目标服务器的地址信息和测试参数的统一资源定位符URL消息,向所述目标服务器发送所述URL消息其中,所述目标服务器的地址信息为所述URL消息的目的地址。
接收单元43,用于接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果。
比较单元44,用于将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
可选的,可选的,上述存储文件中还可以存储有多个服务器的地址信息,例如,上述被测接口需要采用多个服务器进行测试时,该存储文件中可以存储这多个服务器的地址信息。通过读取不同的服务器的地址信息实现采用不同的服务器进行测试。从而可以自动采用多个服务器对被测接口进行测试。例如:读取单元412可以用于解析所述存储文件,读取所述测试参数,以及从所述多个服务器的地址信息中选择所述目标服务器的地址信息。
另外,还可以同时采用多个服务器对被测接口进行测试,或者依次采用多个服务器对被测接口进行测试。
可选的,上述存储文件中还可以包括预设期望结果,比较单元43可以用于从所述存储文件中读取所述预设期望结果,并将所述返回结果与所述预设期望结果进行比较。
这样可以实现在整个测试过程中只需要输入存储文件,或者在上述存储文件注输入上述测试参数、期望结果和目标服务器的地址信息就可以自动完成对被测接口的测试。
可选的,比较单元43可以用于通过断言机制在所述存储文件中选择测试参数对应的期望结果,并使用所述断言机制将所述返回结果与所述期望结果进行比较得到比较结果。
其中,上述断言机制可以是自动去获取上述预设期望结果,并将获取的预设期望结果与返回结果进行比较,再输出比较结果。采用断言机制进行比较可以提高比较的效率和准确性。
可选的,可选的,上述生成的URL消息可以是get请求类型的URL消息,或者可以是post请求类型的URL消息。例如:发送单元42可以用于将所述测试参数和所述目标服务器的地址信息拼接成URL,生成包括所述URL的URL消息,并向所述目标服务器发送所述URL消息。
这样可以实现将测试参数直接填加在URL上,可以实现get请求类型的URL消息。
可选的,发送单元42可以用于将所述目标服务器的地址信息和所述测试参数中的第一参数信息拼接成URL,以及生成包括所述测试参数除所述第一参数信息之外的所有参数的消息内容,并生成包括所述URL和所述消息内容的URL消息,并向所述目标服务器发送所述URL消息。
其中,上述第一参数信息可以测试参数中的非隐私信息,而测试参数除所述第一参数信息之外的所有参数为隐私信息。另外,由于URL中的信息容易泄露,这样可以将测试参数中非隐私信息携带在URL中,而将测试参数中的隐私信息携带在URL消息的消息内容中,以防止隐私信息的泄露。
可选的,发送单元42可以用于将所述目标服务器的地址信息作为URL,以及生成包括所述测试参数的消息内容,并生成包括所述URL和所述消息内容的URL消息,并向所述目标服务器发送所述URL消息。
可以实现URL只包括目标服务器的地址信息,而测试参数采用URL消息的消息内容携带,从而实现post请求类型的URL消息,以保护测试参数的安全或者隐私。
本实施例中,在图3所示的实施例的基础上增加了多种可选的实施方式,且都可以实现降低接口测试的成本,另外,本实施例中的实施方式都可以应用于图3所示的实施例中。
请参阅图5,图5是本发明实施例提供的另一种接口测试装置的结构示意图,如图5所示,包括:处理器51、网络接口52、存储器53和通信总线54,其中,所述通信总线54用于实现所述处理器51、网络接口52和存储器53之间连接通信,所述处理器51执行所述存储器53中存储的程序用于实现以下方法:
获取被测接口的测试参数和目标服务器的地址信息;
使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;
接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;
将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。
可选的,处理器51执行的获取被测接口的测试参数和目标服务器的地址信息的步骤,可以包括:
获取存储有被测接口的测试参数和所述目标服务器的地址信息的存储文件;
解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息。
可选的,存储文件存储有多个服务器的地址信息;
处理器51执行的所述解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息的程序,可以包括:
解析所述存储文件,读取所述测试参数,以及从所述多个服务器的地址信息中选择所述目标服务器的地址信息。
可选的,上述存储文件中还可以包括所述预设期望结果,处理器51执行的所述将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果的程序,可以包括:
通过断言机制在所述存储文件中选择测试参数对应的预设期望结果,并使用所述断言机制将所述返回结果与所述预设期望结果进行比较得到比较结果。
可选的,处理器51执行的使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息的程序,可以包括:
生成包括所述目标服务器的地址信息和测试参数的统一资源定位符URL消息,其中,所述目标服务器的地址信息为所述URL消息的目的地址;
向所述目标服务器发送所述URL消息。
可选的,处理器51执行的生成包括所述目标服务器的地址信息和测试参数的URL消息的程序,可以包括:
将所述测试参数和所述目标服务器的地址信息拼接成URL,生成包括所述URL的URL消息;或者
将所述目标服务器的地址信息和所述测试参数中的第一参数信息拼接成URL,以及生成包括所述测试参数除所述第一参数信息之外的所有参数的消息内容,并生成包括所述URL和所述消息内容的URL消息;或者
将所述目标服务器的地址信息作为URL,以及生成包括所述测试参数的消息内容,并生成包括所述URL和所述消息内容的URL消息。
本实施例中,获取被测接口的测试参数和目标服务器的地址信息;使用所述目标服务器的地址信息向所述目标服务器发送的携带有所述测试参数的请求消息;接收所述目标服务器响应所述请求消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果。由于该技术方案可以不需要接收用户输入的操作而自动完成被测接口的测试,从而相比现有技术本发明可以降低接口测试的成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种接口测试方法,其特征在于,包括:
获取被测接口的测试参数和目标服务器的地址信息;
生成包括所述目标服务器的地址信息和测试参数的统一资源定位符URL消息,其中,所述目标服务器的地址信息为所述URL消息的目的地址;
向所述目标服务器发送所述URL消息;
接收所述目标服务器响应所述URL消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;
将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果;
其中,所述生成包括所述目标服务器的地址信息和测试参数的统一资源定位符URL消息,包括:
将所述目标服务器的地址信息和所述测试参数中的第一参数信息拼接成URL,以及生成包括所述测试参数除所述第一参数信息之外的所有参数的消息内容,并生成包括所述URL和所述消息内容的URL消息;
其中,所述第一参数信息为所述测试参数中的非隐私信息,而所述测试参数除所述第一参数信息之外的所有参数为隐私信息。
2.如权利要求1所述的方法,其特征在于,所述获取被测接口的测试参数和目标服务器的地址信息,包括:
获取存储有被测接口的测试参数和所述目标服务器的地址信息的存储文件;
解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息。
3.如权利要求2所述的方法,其特征在于,所述存储文件存储有多个服务器的地址信息;
所述解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息,包括:
解析所述存储文件,读取所述测试参数,以及从所述多个服务器的地址信息中选择所述目标服务器的地址信息。
4.如权利要求2或3所述的方法,其特征在于,所述存储文件中还包括所述预设期望结果,所述将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,包括:
通过断言机制在所述存储文件中选择测试参数对应的预设期望结果,并使用所述断言机制将所述返回结果与所述预设期望结果进行比较得到比较结果。
5.一种接口测试装置,其特征在于,包括:获取单元、发送单元、接收单元和比较单元,其中:
所述获取单元,用于获取被测接口的测试参数和目标服务器的地址信息;
所述发送单元,用于生成包括所述目标服务器的地址信息和测试参数的URL消息,并向所述目标服务器发送所述URL消息,其中,所述目标服务器的地址信息为所述URL消息的目的地址;
接收单元,用于接收所述目标服务器响应所述URL消息返回的响应结果,其中,所述响应结果是所述目标服务器对所述测试参数进行测试而生成的响应结果;
比较单元,用于将所述响应结果与获取的测试参数对应的预设期望结果进行比较得到比较结果,所述比较结果用于表示所述被测接口的测试结果;
其中,所述发送单元,具体用于将所述目标服务器的地址信息和所述测试参数中的第一参数信息拼接成URL,以及生成包括所述测试参数除所述第一参数信息之外的所有参数的消息内容,并生成包括所述URL和所述消息内容的URL消息,向所述目标服务器发送所述URL消息;
其中,所述第一参数信息为所述测试参数中的非隐私信息,而所述测试参数除所述第一参数信息之外的所有参数为隐私信息。
6.如权利要求5所述的装置,其特征在于,所述获取单元包括:
获取子单元,用于获取存储有被测接口的测试参数和所述目标服务器的地址信息的存储文件;
读取单元,用于解析所述存储文件,读取所述测试参数和所述目标服务器的地址信息。
7.如权利要求6所述的装置,其特征在于,所述存储文件还存储有多个服务器的地址信息;
所述读取单元用于解析所述存储文件,读取所述测试参数,以及从所述多个服务器的地址信息中选择所述目标服务器的地址信息。
8.如权利要求6或7所述的装置,其特征在于,所述存储文件中还包括所述预设期望结果,所述比较单元用于通过断言机制在所述存储文件中选择测试参数对应的预设期望结果,并使用所述断言机制将所述返回结果与所述预设期望结果进行比较得到比较结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510300593.8A CN105099811B (zh) | 2015-06-03 | 2015-06-03 | 一种接口测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510300593.8A CN105099811B (zh) | 2015-06-03 | 2015-06-03 | 一种接口测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105099811A CN105099811A (zh) | 2015-11-25 |
CN105099811B true CN105099811B (zh) | 2019-01-22 |
Family
ID=54579422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510300593.8A Expired - Fee Related CN105099811B (zh) | 2015-06-03 | 2015-06-03 | 一种接口测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105099811B (zh) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874174B (zh) * | 2015-12-11 | 2020-08-21 | 阿里巴巴集团控股有限公司 | 接口测试及功能测试的实现方法和装置 |
CN106992899A (zh) * | 2016-01-20 | 2017-07-28 | 泰康保险集团股份有限公司 | 一种网络接口测试装置及方法 |
CN107171881A (zh) * | 2016-03-08 | 2017-09-15 | 阿里巴巴集团控股有限公司 | 消息处理系统的测试方法和装置 |
CN106209503B (zh) * | 2016-06-28 | 2019-07-09 | 武汉斗鱼网络科技有限公司 | Rpc接口测试方法及系统 |
CN106549800A (zh) * | 2016-10-31 | 2017-03-29 | 北京奇鱼时代科技有限公司 | 用于在网络系统中批量校验数据接口的方法和装置 |
CN106776287A (zh) * | 2016-11-24 | 2017-05-31 | 泰康保险集团股份有限公司 | Servlet接口测试方法及测试客户端 |
CN106598851A (zh) * | 2016-12-05 | 2017-04-26 | 广州唯品会信息科技有限公司 | 软件接口测试方法及系统 |
CN108427631B (zh) * | 2017-02-14 | 2022-04-12 | 北京京东尚科信息技术有限公司 | 一种应用测试系统、方法、电子设备和可读存储介质 |
CN106886494B (zh) * | 2017-03-07 | 2020-03-24 | 深圳国泰安教育技术有限公司 | 一种接口自动化测试方法及其系统 |
CN108574604B (zh) * | 2017-03-07 | 2020-09-29 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN107122296B (zh) * | 2017-04-18 | 2020-06-19 | 上海雷腾软件股份有限公司 | 用于测试接口的数据断言的方法及设备 |
CN107329861B (zh) * | 2017-06-12 | 2020-12-22 | 奇安信科技集团股份有限公司 | 一种多接口测试方法及装置 |
CN107403112B (zh) * | 2017-07-31 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 数据校验方法及其设备 |
CN107748717A (zh) * | 2017-09-26 | 2018-03-02 | 深圳市牛鼎丰科技有限公司 | 接口自动化测试方法、装置、存储介质和计算机设备 |
CN107678902A (zh) * | 2017-10-31 | 2018-02-09 | 郑州云海信息技术有限公司 | 一种统一存储阵列的测试方法及其装置 |
CN107832217A (zh) * | 2017-11-09 | 2018-03-23 | 政采云有限公司 | 一种自动化测试方法及装置 |
CN108089956B (zh) * | 2017-12-07 | 2021-05-04 | 畅捷通信息技术股份有限公司 | 验证接口的返回数据的方法及系统 |
CN109901989B (zh) * | 2017-12-11 | 2023-12-12 | 阿里巴巴(中国)有限公司 | Json对比方法和装置以及电子设备 |
CN108255730B (zh) * | 2018-01-23 | 2021-04-02 | 平安普惠企业管理有限公司 | 软件接口测试方法、测试设备、存储介质及装置 |
CN110674023B (zh) * | 2018-07-02 | 2022-11-04 | 北京奇虎科技有限公司 | 一种接口测试方法和装置 |
CN108990047B (zh) * | 2018-07-03 | 2021-06-29 | 中国联合网络通信集团有限公司 | 签约关系管理数据准备平台的测试方法、装置及介质 |
CN108809769B (zh) * | 2018-07-18 | 2020-09-08 | 赛尔网络有限公司 | 一种检测IPv6活跃度的方法和电子设备 |
CN109299002A (zh) * | 2018-08-24 | 2019-02-01 | 平安科技(深圳)有限公司 | 测试报告的生成方法、计算机可读存储介质及终端设备 |
CN109254921A (zh) * | 2018-09-18 | 2019-01-22 | 平安科技(深圳)有限公司 | 应用版本验证方法、装置、计算机设备以及存储介质 |
CN109491900A (zh) * | 2018-10-31 | 2019-03-19 | 北京车和家信息技术有限公司 | 接口测试方法、装置、电子设备及计算机可读存储介质 |
CN109857634A (zh) * | 2018-12-15 | 2019-06-07 | 中国平安人寿保险股份有限公司 | 接口测试参数校验方法、装置、电子设备及存储介质 |
CN109753432A (zh) * | 2018-12-21 | 2019-05-14 | 瑞庭网络技术(上海)有限公司 | 一种接口性能测试方法、装置、服务器及系统 |
CN109947639B (zh) * | 2019-01-30 | 2022-07-26 | 兴业证券股份有限公司 | Esb接口自动化测试方法 |
CN109818973B (zh) * | 2019-03-13 | 2021-06-04 | 信联科技(南京)有限公司 | 一种基于串接方式的协议模糊测试方法 |
CN110032511A (zh) * | 2019-03-19 | 2019-07-19 | 深圳市买买提信息科技有限公司 | 一种接口测试方法及接口测试设备 |
CN110380929B (zh) * | 2019-07-15 | 2023-05-09 | 创新先进技术有限公司 | 一种幂等有效性检测方法、装置及设备 |
CN110908908B (zh) * | 2019-11-21 | 2024-03-29 | 深圳无域科技技术有限公司 | 测试微服务Dubbo接口的方法及装置 |
CN111294257B (zh) * | 2020-03-09 | 2022-05-27 | 北京九州云动科技有限公司 | 应用服务器自动压力测试的方法、装置和系统 |
CN111597020B (zh) * | 2020-04-24 | 2024-03-22 | 五八有限公司 | 一种应用程序编程接口api调试方法以及调试终端 |
CN112214395A (zh) * | 2020-09-02 | 2021-01-12 | 浙江大搜车融资租赁有限公司 | 基于流量数据的接口测试方法、电子装置及存储介质 |
CN112084114B (zh) * | 2020-09-16 | 2024-07-16 | 京东科技控股股份有限公司 | 用于测试接口的方法和装置 |
CN112162923A (zh) * | 2020-09-25 | 2021-01-01 | 中诚信征信有限公司 | 一种接口测试方法及装置 |
CN115774990A (zh) * | 2023-02-10 | 2023-03-10 | 成都萌想科技有限责任公司 | 基于配置文件的RESTfulAPI对比方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576843A (zh) * | 2008-05-07 | 2009-11-11 | 阿里巴巴集团控股有限公司 | 一种测试应用程序接口的方法和装置 |
CN102185734A (zh) * | 2011-04-18 | 2011-09-14 | 华为软件技术有限公司 | 接口自动化测试方法及服务器 |
CN104572469A (zh) * | 2015-01-23 | 2015-04-29 | 广东能龙教育股份有限公司 | 一种基于模拟http请求的接口自动化测试方法和系统 |
-
2015
- 2015-06-03 CN CN201510300593.8A patent/CN105099811B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576843A (zh) * | 2008-05-07 | 2009-11-11 | 阿里巴巴集团控股有限公司 | 一种测试应用程序接口的方法和装置 |
CN102185734A (zh) * | 2011-04-18 | 2011-09-14 | 华为软件技术有限公司 | 接口自动化测试方法及服务器 |
CN104572469A (zh) * | 2015-01-23 | 2015-04-29 | 广东能龙教育股份有限公司 | 一种基于模拟http请求的接口自动化测试方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105099811A (zh) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105099811B (zh) | 一种接口测试方法和装置 | |
CN111177005B (zh) | 业务应用的测试方法、装置、服务器和存储介质 | |
US11163671B2 (en) | Automatically executing stateless transactions with data dependency in test cases | |
CN108319547B (zh) | 测试用例生成方法、装置和系统 | |
CN108650149A (zh) | 服务器的测试方法、装置、设备及计算机可读存储介质 | |
CN106294094B (zh) | 游戏服务器的测试方法、客户端、服务器及系统 | |
CN107436844B (zh) | 一种接口用例合集的生成方法及装置 | |
KR101520056B1 (ko) | 클라우드 기반 모바일/온라인 게임 서버 부하 테스트 자동화 서비스 방법 | |
CN106897215A (zh) | 一种基于WebView网页加载性能及用户行为流数据采集的方法 | |
US10374934B2 (en) | Method and program product for a private performance network with geographical load simulation | |
CN110275831A (zh) | 协议接口的mock数据校验方法和装置 | |
US9654580B2 (en) | Proxy-based web application monitoring through script instrumentation | |
WO2020086969A1 (en) | Methods and systems for performance testing | |
CN112988608B (zh) | 数据测试方法、装置、计算机设备及存储介质 | |
CN109446075A (zh) | 一种接口测试方法及装置 | |
CN104967644A (zh) | 消息推送方法、装置及系统 | |
CN113296653B (zh) | 一种仿真交互模型构建方法、交互方法及相关设备 | |
CN109831357A (zh) | 一种服务验证方法、装置、存储介质及服务器 | |
CN107832221A (zh) | 基于Burpsuit插件的平台半自动化功能测试方法、装置及系统 | |
CN110609785A (zh) | 软件接口的测试方法及装置 | |
Šandi et al. | pypmu—open source python package for synchrophasor data transfer | |
CN108322427A (zh) | 一种对访问请求进行风控的方法与设备 | |
CN107171889A (zh) | 网络应用接口的测试方法、装置及电子设备 | |
Wenhui et al. | Study on REST API test model supporting web service integration | |
CN104636923B (zh) | 一种信息传输方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190122 |