流程:
1.需求讨论
2.需求评审
3.场景设计
4.用例设计
5.数据准备
6.执行
分析接口文档,提取测试点:
1.输入:接受哪些参数、参数的类型、可选参数和必选参数等;根据输入参数采用等价类、边界值分析法等进行设计;
2.业务逻辑:对于个接口,不同的输入参数或组合,流程或状态的转移是不同,可以根据业务逻辑画出流程图或状态转移图,确保每种状态至少被访问了一次 ;
3.输出:根据文档规定的输出,反向设计测试数据,使所有的输出状态都被包含了;
用例设计:
1.功能(功能正常:正常登录、按接口文档实现)
2.逻辑业务(是否依赖业务:是否登录)
3.异常:
参数异常(参数关键字、参数为空、多/少个参数、错误参数)
数据异常(关键字数据、数据为空、长度不一致、错误数据)
4.安全:
cookie(有无cookie)
header(有无header)
唯一识别码(手机唯一识别码)
那么接口测试的用例则是来源与系统的数据交互设计方案、架构的设计,也就是普遍针对开发内容细节的正确性测试
工具:
1.fiddler
2.postman
3.python开发
协议接口:
1.http超文本传输协议
2.https安全超文本传输协议
3.ftp文件传输协议
4.tcp网络控制协议
5.ip互联网协议
6.udp用户数据协议
TCP、UDP都建立在IP协议的基础上,其中TCP提供可靠的面向连接服务,UDP提供简单的无连接服务。
请求方式:
1.get、post、delete、put
get请求
post请求(参数化:parameters、json、files)
2.get和post区别:数据长度、安全、可见
返回状态:
1XX:信息响应类
2XX:处理成功
3XX:重定向
4XX:客户端错误 (401cookie失效或未传,415请求头的格式不正确或不支持)
5XX:服务端错误
场景:
1.客户端发送请求到api接口层
2.api接收到用户请求(验证:有效性)
3.api将用户输入的数据发给db层(数据库:create、delete、update、read)
4.db会返回查询的数据给api
5.api返回状态码给客户端
6.客户端将返回的信息提示给用户