51Testing软件测试论坛

标题: 【软件测试教学】在做接口测试之前必须掌握的原理 [打印本页]

作者: 测试人追风    时间: 2020-11-22 15:42
标题: 【软件测试教学】在做接口测试之前必须掌握的原理
一 . 接口测试的定义
1.接口是前后端沟通的桥梁,是数据传输通道,包括外部接口、内部接口,内部接口又包括:上层服务与下层服务接口、同级接口;
2.接口是把自己提供给外界的一种抽象化物,使其能被内部修改而不影响外界与其交互的方式;
下面以生活实例举例说明什么是接口:
电脑上的键盘的按键就是电脑向人提供的接口。键盘上的按键(接口),打字时候输入的qwer(接口的输入) ,展现在电脑屏幕上的qwer(接口的输出)
二 . 接口的本质
接口是具有特定输入和特定输出的一套逻辑处理单元,也可以理解成它是一种契约,遵循一种形式,在项目开发前期前后端会约定接口接收什么参数,后端处理完之后,返回什么数据给前端。前后端一起联调完成系统逻辑的前期预期,提高研发效率
三 . 常见的接口类型
四 . HTTP 工作原理
HTTP协议工作于客户端-服务器(C/S)架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即web服务器发送所有请求。
下面通过一张互联网架构图理解HTTP工作原理:


接口发送请求时候的交互原理:客户端发送网络请求→API网关,网关可能部署在(阿里云,Apache,IIS,nginx等)→再到后端服务services(可能存在多层级的服务)→servies再去数据库(大数据)获取数据→数据返回给客户端,http默认是持久连接
五 . session与cookie
cookie 是访问网站的时候,由网站服务器返回的一种标记为cookie 类型数据;在本地存储一些网站相关的信息,下次再访问的时候减少一些步骤。或者说cookie 是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器,是一种在客户端保持状态的方案。


由于 HTTP 协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是 Session。
cookie是保存在浏览器上,可以进行Cookie欺骗相对于session 安全级别比较弱。session是放在服务器端,更加安全;
Session保存在服务端,每个用户发送请求时产生一个Session,当访问增多,会比较占用服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用Cookie;
cookie和session应用的场景:
cookie:用户的登录状态,记录用户的习惯,购物车;
session:登录验证;
六 . 接口测试的定义
接口测试是基于协议进行测试的,实际上是黑盒测试,基本的测试思路是通过输入和输出判断被测系统或者对象的逻辑。为什么说接口是黑盒测试,因为接口是具有特定输入和特定输出的一套逻辑处理单元,测试接口时候不需要知道它的内部实现逻辑
七 . 接口测试的意义
接口测试是测试工程师的必修课:如果不会接口测试,自动化更别提了, 领导也不相信你会把自动化测试能做好。然后会搭建接口自动化测试框架,也是你能力体现的一个分水岭
接口测试的好处:
八 . 接口的请求方法
http协议里定义了一些请求的方法或者叫动词,这些方法和动词可以进一步定义请求的目的,比如是获取资源还是创建资源等;常用的是GET,POST。
在接口测试中,一般来说,post创建数据,get获取创建成功后的所有数据和指定的数据,put可以对创建成功后的数据进行修改,delete是删除指定的资源。以下是接口请求方法列表:


九 . 接口常见响应状态码
OK,我们理解了接口和接口测试的意义之后,接下来我们就可以着手于接口测试了,后面会分别分享 接口测试项目实操。如何用接口测试工具进行接口测试、基于python语言进行接口测试、搭建接口自动化测试框架思路,文章首发于公众号:程序员一凡,感谢大家持续关注我们。






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2