一、接口都有哪些类型?
接口一般分为两种:1.程序内部的接口 2.系统对外的接口
系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把 数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。
程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如 bbs 系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。
接口的分类:1.webservice 接口 2.http api 接口
webService 接口是走 soap 协议通过 http 传输,请求报文和返回报文都是 xml 格式的,我们在测试的时候都用通过工具才能进行调用,测试。
http api 接口是走 http 协议,通过路径来区分调用的方法,请求报文都是 key-value 形式的,返回报文一般都是 json 串,有 get 和 post 等方法,这也是最常用的两种请求方式。
json 是一种通用的数据类型,所有的语言都认识它。(json 的本质是字符串,他与其他语言无关,只是可以经过稍稍加工可以转换成其他语言的数据类型,比如可以转换成 Python 中的字典,key-value 的形式,可以转换成 JavaScript 中的原生对象,可以转换成 java 中的类对象等。)
二、接口–前端、后端和测试
前端对接口进行使用:通过后端人员给的接口文档,来进行 Ajax 的设计,通过接口向服务发送请求,获取响应的数据,然后通过返回的数据进行下一步的页面跳转和显示。
后端生成接口:通过编写接口,为前端提供与服务器和数据请求交互的通道。编写对应的接口,需要传递的参数,参数类型等等。然后生成接口文档,分享给前端,让其按照接口文档编写对应的 Ajax。
测试验证接口:可以通过接口文档,进行接口验证,查看后端开发的接口和前端所写的 Ajax 是否对应,有没有出错的接口,还可通过接口流程测试,知道整个系统之间的接口是否是相对应的,有没有接口是不对的,或者没有正常运行。
三、前端、后端和测试使用的接口工具
前端:一般使用 postman、apipost 或者 jmeter 进行接口验证和查看响应值
后端:多用 swagger、apipost、postman 等接口文档生成工具和测试工具
测试:jmeter、apipost 和 postman 等可以对接口进行验证测试。
四、jmeter、postman、apipost、swagger 工具介绍
jmeter 可以进行接口测试和性能测试,但是对于做单纯的接口测试 jmeter 操作起来没有 postman、apipost 使用起来方便。jmeter 重点在于压力测试,稳定性测试和负载测试。针对于接口和程序的稳定性设计的一块以软件性能为主接口测试为辅的接口测试工具。
postman 是 Google 开发的一款接口测试的插件,也有客户端。国内禁用 Google 之后,postman 的插件就不好下载和使用了。postman 这款接口测试工具,是一款很轻便的接口验证工具,可以通过输入请求方法、url、参数直接进行接口请求访问,验证接口是否开通,还可以查看返回的响应值查看接口开发是否正常。不过因为是 Google 开发的所以只支持英文版。对于英文不好的人使用起来特别难受。
apipost 这款接口测试工具,主要针对于接口验证和接口文档生成。apipost 这款接口测试工具,是一款很轻便的接口验证工具,可以通过输入请求方法、url、参数直接进行接口请求访问,验证接口是否开通,还可以查看返回的响应值查看接口开发是否正常。根据这些接口验证信息,直接可以生成在线文档和离线版的 word 文档。是一款很棒的接口测试和接口文档生成工具,又不像 swagger 生成的接口文档都是英文的阅读起来也不太方便。apipost 还具备协同工作,可以很有效的实现前端的接口联调。
swagger 是一款通过针对与后端开发人员的一款接口文档生成工具。主要通过在代码中的注释生成接口文档的工具,不过生成的接口文档是英文的。
工具下载地址:
jmeter:https://jmeter.apache.org/
apipost:https://www.apipost.cn/?dt=20201030
swagger:https://swagger.io/