一.什么是接口
内部接口:开发任意子集开发的给被测系统调用的接口
1.提供给内部系统使用的(接口不公开,只测正例)
2.提供给外部系统使用的(接口公开,正例,反例,鉴权...)
外部接口:系统调用外部的已经存在的接口
二.接口协议的全局观
1.基于SOAP的架构。协议:webservice,数据通过xml交互 , 工具 soapui
2.基于RPC架构,协议:dubbo,thrift,RMI ,数据通过json交互,工具 jmeter
springcloud微服务
3.基于restfule架构,协议:http协议 工具 postman
三.http协议详解
1.什么是http协议
http协议是一种超文本传输协议,主要用于客户端和服务前端之间的交互数据,交互分为请求和响应
请求:请求行,请求头,空一行,请求正文(报文,数据)
响应:响应行,响应头,空一行,响应正文(报文)
四.返回数据
html,json,xml
json:数据格式(字符串,字典的字符串的形式)由两类数据组成:
1.键值对,{key:value,key1,value1}
2.数组(列表):[arry1,arry2,arry3]
dict,json,yaml可以相互转换
不成文的规定:一般接口返回的数据按如下格式开发:
{error_code:返回码,msg:错误信息,data:返回数据}
五,接口测试流程和方案
1.拿到api文档,(规范:swgger,showdoc,不规范:word,excel,没有就只能抓包和录制)
接口业务,接口地址,鉴权方式,入参,出参,错误码等
2.编写接口测试用例以及评审
思路:
先写正例:输入正确参数,接口返回成功,(多种请求方式的情况下由多个正例)
再写反例:(功能测试思路)
鉴权反例:必填,错误,过期
参数反例:必填,类型异常,长度异常
其他反例:错误码,黑名单,次数调用现在,分页场景(负数页,0页,中间页,最后一页)
3,使用接口测试工具执行接口测试
4.输出接口测试报告(word文档,html类型)
postman+newman+git+jenjins
六.postman安装和界面介绍
1.官网下载
2.注册和登录
3.设置环境变量,url:http://....
接口测试填写关键四个点:
请求方式,请求路径,请求数据,请求头
鉴权码:鉴定是否由访问接口权限,csrf_token.access_token,key,token,appkey
获取方式:
1.通过一个独立的接口获取
2.登录之后自动生成
params:get请求传参或post其他请求路径中有参数那么也会自动填充到params
Authorization:鉴权方式
headers:传请求头
Body:post请求传参
form-data:可以传文件也可以传表单键值对
x-www-form-urlencoded:只能传表单键值对
raw:json,text,html,javascript,xml
binary:二进制上传
Pre-request-Script:请求之前的脚本
tests:请求之后的断言
setting:设置
响应页签的详细说明:
Body:返回的数据,Pretty以json./..格式,Raw文本,Preview网页
Cookie:响应的cookie
headers:响应头
Test Result:断言的测试结果
200:状态码
OK:响应信息
388ms响应时间
cookie:postman自动保存以及发送cookie
post和get区别?
1.get一般是获取数据,post是提交数据
2.post比get安全
3.本质区别:传参方式不一样
4.get地址栏后面以?方式传参,多个参数&分割
post是再body以表单传参