接口测试 —— 接口和接口文档概念

1、接口的概念

接口又叫API,全称application programming interface:应用程序接口(规范),也就是我们经常会听说Web接口,APP接口。

详细说明:
APP是一种基于C/S架构的应用程序,如抖音、微信等。完整的体验是基于APP客户端和后台云服务端共同作用的结果。
客户端和服务端的数据传递,也就是指客户端向服务端发送请求,服务端响应客户端的过程。
这一系列的通讯都是基于web协议通讯构成的,在利用web协议通讯的时候,企业内通常都会规定客户端和服务端的数据交换格式,这种格式可以是企业内部规定的,也可以是使用webservice国际通用标准,这样一来客户端和服务端就使用同一套标准进行接口间的通讯。
同样的道理,web接口也是如此,web应用通常是B/S架构,客户端是我们熟悉的浏览器。
总结概括:接口就是客户端与服务端之间的标准,或者是共同遵守的一套数据交互的规范。(一般由项目负责人/架构师来制定接口)

2、为什么要使用接口

在项目中未采用接口时:

  1. 研发标准不统一,团队磨合难度高。
  2. 研发周期长。
  3. 可扩展性差。

在项目中使用接口的优点:

  1. 统一设计标准。
  2. 扩展性灵活。
  3. 前后端开发相对独立,前后端都可以使用自己熟悉的技术。
3、接口文档介绍

接口规范以接口文档的形式进行体现,我们做接口测试也是依据接口文档进行测试。

在项目开发中,web项目的前后端分离开发,APP开发,需要由前后端工程师共同定义接口,编写接口文档,之后大家都根据这个接口文档进行开发,到项目结束前都要一直维护。

接口文档基本形式如下:

名称 添加发布会
描述 添加发布会
URL http://127.0.0.1:8000/api/add_event/
调用方式 POST
请求参数 eid # 发布会 idname # 发布会标题 limit # 限制人数 status # 状态 address # 地址 start_time # 发布会时间
返回值 {'status':200,'message':'add event success'}
状态码 每一个状态码要有一条用例。 {'status':10021,'message':'parameter error'} {'status':10022,'message':'event id already exists'} {'status':10023,'message':'event name already exists'} {'status':200,'message':'add event success'}
说明 说明参数传入方式,签名校验方式,加密方式等等。
4、接口文档要素

一般情况下,开发前就有相应的接口文档,接口文档的形式有很多种,以excel表格或者Word文档或者使用接口管理工具(如swagger等)输出,接口文档包含以下主要的内容:

(1) 接口名称

接口详情 说明
接口名称 添加发布会
接口描述 调用该接接口会创建一个发布会

(2)接口URL

名称 说明
请求协议 http或者https
接口URL 127.0.0.1:8000/api/add_event/
请求方式 新增(post) 修改(put) 删除(delete) 获取(get)等

提示:接口URL也可以形成URI的形式,就是把服务器地址省略掉,例如:/api/add_event/

(3)请求参数

字段 说明 类型 是否必填 备注
eid 发布会 Number 默认:10001
idname 发布会标题 String 默认:填写发布会标题
start_time 发布会时间 Date 格式:2018-02-06 10:30:00

提示:一般数据类型为 String、Number、Object、Array、Date几种类型。

(4)返回值

例如:{'status':200,'message':'add event success'},还可以有其他所需字段。

字段 说明 类型 是否必须返回 备注
code 接口状态码 Number 成功:200 失败:其他状态码
message 接口信息 String 成功:sucess 失败:提示信息

提示:

正常请求参数返回值(必有)。 错误请求参数返回值(看公司要求)。.

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

  1. 文档获取方式:

  2. 加入我的软件测试交流群:680748947免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

相关推荐
互联网杂货铺21 小时前
接口测试和单元测试
自动化测试·软件测试·测试工具·职场和发展·单元测试·测试用例·接口测试
豆子熊.1 天前
外包干了3年,技术退步明显...
软件测试·selenium·测试工具·面试·职场和发展
小码哥说测试2 天前
Selenium + 数据驱动测试:从入门到实战!
自动化测试·软件测试·selenium·测试工具·职场和发展·接口测试·postman
霍格沃兹测试开发学社测试人社区2 天前
提升软件测试报告的质量:Allure2中添加用例失败截图、日志、HTML块和视频的方法
软件测试·测试开发
霍格沃兹测试开发学社测试人社区3 天前
数据驱动与并行策略:用 JUnit 5 让软件测试更高效
软件测试·测试开发·junit
霍格沃兹测试开发学社测试人社区3 天前
软件测试丨探索 JUnit 5 中的参数化与调度执行:提升软件测试的效率与灵活性
软件测试·测试开发·junit
互联网杂货铺3 天前
自动化测试基础知识总结
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
qq_433716954 天前
Selenium+Pytest自动化测试框架 ------ 禅道实战
自动化测试·软件测试·selenium·单元测试·pytest·接口测试·压力测试
HKJ_numb14 天前
软件测试 —— 自动化基础
软件测试·selenium·测试工具·自动化