接口测试类型及接口测试工具

Posted 程序员技术前沿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试类型及接口测试工具相关的知识,希望对你有一定的参考价值。

工作中会接触到很多接口,系统之间涉及的接口类型也多,这里列举的可能不够完全,大家可以参考和了解一下自己工作中是否有遇到下面说的这些接口

文中所列举的测试工具,对开发测试都有极大的帮助,可以提升工作效率,不信的话可以尝试一下


1接口类型:

1.1 Java web的接口包含webservice接口、HTTP接口、javascript接口、服务端jar包接口、hessian,jms接口等

1.2webservice接口

1.2.1 何为Web Service?
        Web Service是构建互联网分布式系统的基本部件,它是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,别人能够用编程的方法通过Web来调用这个应用程序。

它通过标准通信协议,在互联网上以服务的方式发布有用的程序模块,目前大部分是用SOAP作为通信协议。

 它提供一份详细的接口说明书,来帮助用户构建应用程序,这个接口说明书叫WSDL(Web服务描述语言,Web Service Description Language)。

通常已发布的Web Service要注册到管理服务器,便于使用者查询和使用。这个是通过UDDI(统一描述、发现和集成,Universal Discovery Descriptionand Integration)来完成的。 
1.2.2 何为SOAP协议?

SOAP定义SOAP消息的XML格式(XML格式),如果你用一对SOAP标记(SOAP Elements)把XML文档括起来,那么这个就是一个SOAP消息。 

SOAP规范还定义了怎样用XML来描述程序数据,怎样执行RPC(远程过程调用,Remote Procedure Call)。大多数SOAP解决方案都支持RPC-style应用程序,因为很多程序员已对DCOM或CORBA熟悉。它还支持Document-style应用程序(SOAP消息只包含XML文本信息)。Document-style应用程序有很好的灵活性,所以很多用RPC很难构建的Web Service用这种方式构建。 

最后SOAP规范还定义了HTTP消息是怎样传输SOAP消息的。这并不代表SOAP只能用HTTP来作为传输协议,MSMQ、SMTP、TCP/IP都可以做SOAP的传输协议。

安全性对于应用程序来说是很重要的。那么SOAP的安全性如何呢?对于把HTTP作为传输协议的SOAP来说是没有问题的,因为HTTP协议已经有很好的安全构架。那么用其他传输协议会出现安全问题吗?这方面也已经有相关规范

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnglobspec/html/ws-security.asp)。

 1.2.3 何为WSDL?

WSDL是一种XML文档,它定义SOAP消息和这些消息是怎样交换的。IDL(Interface Description Language,接口描述语言)是用于COM和CORBA的,WSDL是用于SOAP的。WSDL是一种XML文档,所以可以阅读和编辑,但很多时候是用工具来创建、由程序阅读。

举个实例,当读者需要使用第三方的Web Service构建应用程序。你可以向接口提供商索取使用WSDL文档,在该文档中详细的说明了各个方法的方法名、参数和参数类型等信息。在Java等编程语言的IDE(例如My Eclipse)中,可以根据Web Servie生成对应的测试代码,稍微修改一下即可。

 1.2.4 何为UDDI?

XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized MarkupLanguage,标准通用标记语言)。在Web Service接口中,WSDL和UDDI目录文件都是一种XML文档,XML解决了数据表示的问题。

 1.2.6 何为XSD?

XML解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有说怎么去扩展这套数据类型。例如,整型数到底代表什么?16位,32位,还是64位?

W3C制定的XML Schema(XSD)就是专门解决这个问题的一套标准。它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。Web Service就是用XSD来作为其数据类型系统的。

1.2.7webservice接口测试工具:

<1>soapui参考《soapui使用说明》

<2>jmeter参考《jmeter使用说明》

详细可参阅:http://note.youdao.com/share/?id=fa8f5ff629f02837b15f70f5fa7765b6&type=note

 

1.3HTTP接口

1.3.1HTTP协议

HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。客户端连上 web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式

1.3.2HTTP请求的细节——请求行

1.3.3HTTP接口测试工具

<1>谷歌浏览器插件postman参考《postman使用说明书》

<2>jmeter《参考jmeter使用说明书》

详细可参阅:http://note.youdao.com/share/?id=33b9283bf33a7a1be02022e1e6ca4536&type=note

 

1.4jar包接口

服务端系统提供封装好的接口jar包给客户端,客户端系统仅需要调用服务端的接口jar包中的方法即可实现接口方法的调用(具体如何调用会在接口文档中做明确说明的

例如:(短信平台接口,网上营业厅调用短信平台接口)红色狂代表短信平台提供的实体类和方法,网上营业厅只管拿来用就OK了

1.5 js接口

javascript中并没有原生的创建或者实现接口的方式,或者判定一个类型是否实现了某个接口,我们只能利用js的灵活性的特点,模拟接口。 
在javascript中实现接口有三种方式:注释描述、属性验证、鸭子模型。 

1.6hessian接口

ICE,WebService一样,既然作为服务类那么必须有文档公布它的接口形式,客户端用户在通过这个文档来生成代理类。ICE是通过.Ice文件,WebService是通过wsdl,但是hessian没有这个类型的文档,hessian的代理类是直接通过factrory去生成的。所以在做hessian客户端代码之前,需要拿到接口文件interface

详细可以参阅:http://note.youdao.com/share/?id=64e0ea4b4d4c574b404bef3454dc0f99&type=note

 

1.7接口测试需要学习的技术:

json/xml/soap/http/java/jmeter/postman/soapui/


以上是关于接口测试类型及接口测试工具的主要内容,如果未能解决你的问题,请参考以下文章

关于接口测试需要知道的一些东西

Jmeter接口测试变量及参数化

接口测试工具Postman安装及使用教程

转转交易全链路接口测试发展及扩展

接口测试用例编写要点都有哪些?

接口测试基础下