第 1 章 什么是接口测试
1.1、为什么要进行接口测试
目前除了特别Low的公司外,开发都是前后端分离的,就是说前端有前端的工程师进行编码,后端有后端的工程师进行编码,前后端进行数据基本都是通过接口进行交互的。
1.2、接口测试
接口测试就是针对软件向外提供的服务接口的输入和输出进行测试,以及软件内部接口与接口之间相互依赖关系的测试,总的说来接口测试就是验证接口功能与接口文档所描述的是否一致。
接口测试的原理是基于http\https等协议模拟客户端向服务端发送请求。
1.3、什么是URL
URL就是统一资源定位符,获取服务器资源的一种,80端口可以不写。
标准格式:协议://服务器IP:端口/路径1/路径N?key1=value1&key2=value2。
示例鹰迅课堂PC端网站:
http://www.yxclass.net:80/index
第 2 章 B/S架构和C/S架构
2.1、B/S架构
B/S架构即(浏览器-服务器)架构模式,类似鹰迅课堂PC端网站,网址:http://www.yxclass.net,依赖网络环境,UI动画等需要网络加载快,使用才不会卡顿。
B/S架构的优点是不管是什么系统,都是一套代码,而且不用考虑兼容性的问题,缺点是体验感不好,但只要网络足够好,就接近原生开发了,体验感就能接近C/S架构了。
2.2、C/S架构
C/S架构就是(客户机-服务器)架构模式,即Client-Server(C/S)结构,就像手机的APP一样,体验功能更舒服;但是缺少通用性,有bug修复,或者功能升级就需要重新发布,用户需要下载安装新的依赖包,而且还要考虑各个系统之间的兼容性,要开发多个版本,这增加了维护和管理的难度。
第 3 章 HTTP协议
3.1、HTTP协议
HTTP是HyperText Transfer Protocol的简写,中文意思是超文本传输协议。
协议就是一种约定,规定好一种信息的格式,如果发送方按照某种请求格式发送信息,那么接收端就要按照这样的格式解析数据,这就是协议。总的说来就是我们约定好的一种规范,我按照这种协议发送给你,你就要用这种协议进行解析,不然就会失败。
3.2、常见的协议
常见的协议有json协议和xml协议
json协议

xml协议

3.3、HTTP的九种请求方法
http1.0定义了三种:
Get:向服务器获取资源,比如常见的查询请求。比如需要查询鹰迅课堂的课程列表,就用get请求。
Post:向服务器提交数据而发送的请求,比如说测试鹰迅课堂的注册登录功能,我们就需要向服务端提交账号密码,就要用到Post请求。
Head:和get类似,返回的响应中没有具体的内容,用于获取响应报文的头部信息。
http1.1定义了六种
Put:一般是用于更新请求,比如更新个人信息、商品信息全量更新。
Patch:Put 方法的补充,更新指定资源的部分数据。
Delete:用于删除指定的资源。
Options: 获取服务器支持的HTTP请求方法,服务器性能、跨域检查等。
Connect: 方法的作用就是把服务器作为跳板,让服务器代替用户去访问其它网页,之后把数据源返回给用户,网页开发基本不用这个方法,如果是http代理就会使用这个,让服务器代理用户去访问其他网页,类似Nginx等反向代理中介。
Trace:回显服务器收到的请求,主要用于测试或诊断。
3.4、Http请求消息结构
http请求消息体分为三部分:请求行,请求头,请求体。
请求行
协议名
URL地址
请求方法
2、请求头
报文头包含若干个属性 格式为“属性名:属性值”。
服务端据此获取客户端的基本信息。
3、请求体
请求的参数,可以是json对象、xml对象,也可以是前端表单生成的key=value&key=value的字符串。