01 什么是接口?为什么需要接口?
因为接口能使我们的实体或者软件内部数据能够被外部进行修改、查询。从而使得内部和外部实现数据交互,所以,需要用到接口。
软件接口:又称:API(application program interface):微信提现功能调用银联接口实现数据交互。
02 接口返回的数据格式
接口返回数据的格式:
JSON html xml txt 等等
1.json格式如:
{‘error_code’:40001,msg:'提现成功',data:[具体的数据]}
error_code(code):错误码
msg(message):对错误码的中文说明
data(result):具体的数据
目前80%-90%都会返回这个json格式:
json数据格式是由以下两种数据组成:(可以互相嵌套)
a.字典,{键值对}
b.数组:[12,13,14]
验证json格式以及可以做加密和解密:在线JSON校验格式化工具(Be JSON)
2.xml格式如:
<xml>
<error_code>40001</error_code>
<msg>提现成功</msg>
<data>具体的数据</data>
</xml>
3.html格式如:
<html>
<head>
<title></title>
</head>
<body></body>
</html>
03 接口协议信息全面系统讲解
http请求信息由三部分组成:
-
1、请求方法URL协议/版本(start line 起始行),例如 get put POST / HTTP/1.1 POST代表请求方法,/代表的是URL根目录, HTTP/1.1代表协议和协议的版本,目前流行的协议就是HTTP/1.1
-
2、请求头(Headers),可以把请求头部信息看做配置信息,所以比较灵活,是一些键值对的形式存在。
HTTP响应
相比较于http请求,对于http响应我们的关注点一般是它的status code 也就是我们常说的状态码和body信息,响应消息的第一行为下面的格式:
HTTP-Version Status-Code Response-Phrase例如
HTTP/1.0 200 ok
状态码是一个三位数字的结果代码,第一个数字可能取5个值,在实际生产过程中,结果比较多的多以2,3,4,5开头,3重定向响应类较少,不过在接口测试中可能会遇到,具体的区别如下
1xx:信息响应类,表示接收到请求并且继续处理
2xx:处理成功响应类,表示动作被成功接收、理解和接受
3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理
4xx:客户端错误,客户请求包含语法错误或者是不能正确执行
5xx:服务端错误,服务器不能正确执行一个正确的请求
-
3.请求体(Request Body):这部分在下文,结合实例具体展开;
04 企业当中项目开发如何做接口测试以及接口测试流程和规范?
-
1.得到api接口文档(开发人员提供),熟悉接口业务,接口地址,鉴权(签名,秘钥),入参,出参(返回报文),错误码(状态码)。接口测试也是基于业务开展,所有的接口都是来源于业务,业务模块进行拆分,拆分成不同的接口(用户信息:登录接口 、注册接口、用户信息查询接口、用户信息编辑)
-
2.编写接口测试计划方案以及评审(有多少个接口、接口测试采用什么技术、人力分配、执行时间)。
-
3.编写接口测试用例以及评审;
-
4.使用接口测试工具执行接口测试(测试用例脚本编写,调试、执行);
-
5.输出接口测试报告。
05 Postman接口测试工具介绍
-
1、Postman是一个可扩展的API开发和测试协同平台工具。
-
2、Postman由谷歌公司研发,以前只是谷歌浏览器的一个插件,后发布了客户端,已有1000万+用户正在使用posman工具。
-
3、Postman 这个工具还可以进行性能测试 接口自动化测试。
06 Postman接口测试工具的特点和优势
-
Postman只做http/https协议的接口的测试,是一种最广泛REST(JSON)接口测试客户端软件。
-
Postman是一个接口的开发和测试的全流程支持软件。
-
支持前端开发:mock测试
-
支持后端开发:接口测试、开发接口文档
-
支持测试:接口测试(性能 自动化测试)
-
支持运维:监控功能(运维人员)
07 Postman下载和安装
下载地址:https://www.postman.com/
获取方式:
https://www.postman.com/home 由于是国外的网站,需要翻墙VPN google 开发 用的是国外的域名
官方下载是最新版(英文版)
选择不同的操作系统进行下载
直接操作下载
08 注册Postman账号
安装完成之后 下一步需要做的就是注册账号操作:
① 打开Postman,点击【创建账号】或【登录】,会跳转到浏览器,跳转到Postman 网站
② 若已有账号可以直接登录;若无账号,则创建新账号
如果有google 账户,可以直接通过google 邮箱账号进行登录,国内QQ 邮箱也是可以注册的。
需要记住用户名 和密码 方便下一次 不同电脑进行登录。
浏览器登录成功,可以把用户的登录信息 同步给客户端。
③ 若登录成功会弹出提示框,点击“打开Postman”,即可在Postman客户端登录成功
④ 稍等一会,登录成功,我们点击Workspaaces来到自己的工作空间
09 Postman 主界面功能简介
1、顶部菜单
1:菜单按钮有一些常用的菜单
①:file:文件(主要是一些基本功能,快捷打开一些窗口之类的操作)
②:edit:编辑(主要是复制粘贴撤销等基本操作)
③:view:视图(主要是对于屏幕页面的控制(放大,缩小,前进,后退等))
④:help:帮助(主要是检查版本更新,清除缓存和连接github的菜单等)
2:Home:主要是跳到个人主页上,包括提醒,工作区等信息,也可以选择不同的工作空间,以及当下主流项目的一些接口介绍;
3:Workspace:工作区域。是Postman 最主要的功能。API 管理和API 测试功能。其中有个人的工作区域还有团队的工作区域可以分享和邀请成员。
4:API Network:api网络 主要是区分,私有网络,公共网络,以及合作方网络。一些项目需要在专门的网络下进行。
5:Explorer:探索:查看关于Postman的公共api、团队、工作区和集合。一些比较流行的api接口。
6:search Postman:搜索一些请求,和用例集等;
7:Invite:邀请成员:如果你是个管理角色,可以邀请你们团队成员加入。
8:settings:设置:主要设置一些请求,参数,证书等;
9:Notifications:消息:查看来自团队的活动,Postman更新的通知,查看拉请求、评论活动和其他重要信息。
10:Manage accounts:账户:自己的登录账户所在的地方;
11:Upgrade:升级:主要是一些资源的使用情况;
2:中间操作菜单
1:Collections:集合,就是一组API的集合,相当于是一个综合的板块,下面可以创建包,创建各种请求;
2:APIs:管理API的地方,可以创建>定义>测试>部署>监控api,和collections的作用其实差不多;
3:Environments ----管理API 执行环境的地方,有全局变量和环境变量应对一些请求不断变化 本地环境 预发布环境 测试环境 正式环境;
4:Mock servers ----设置Mock 服务器的地方,主要是为了联调测试,不拖慢测试的进度;
5:Monitors:定期运行集合,以检查其性能和响应,可以定时监控一些请求和流程 运维人员服务端进行监控 并且发出预警;
6:Flows ----过拖放UI连接一系列请求,从而创建API工作流;
7:History ----工作空间中发送的任何请求都将出现在这里。
3:底部菜单
1:find and replace: 可以批量查找整个工作空间的某一内容,并迅速替换为自己想要的内容;
2:console:控制台:主要是看自己控制台的一些日志或者是报错打印信息的地方;
3:Runner:就是集合的执行器,可以批量执行一些请求,通常用于一些业务的主流程的测试;
4:Capture requests:俗称抓包,Postman不是一个专业的抓包工具,建议使用charles;
5:Cookies:查看,管理或者同步Cookies;
6:Trash:恢复或永久删除任何已删除的集合;
7:Two-pane view 双窗格视图在单窗格视图和双窗格视图之间进行切换。
10 高频常用功能接口请求全面系统讲解
11 接口响应区域功能全面系统讲解
向服务器端发送请求,发送请求之后会返回响应结果给Postman客户端
-
1:body:响应体 Pretty:响应展示的视图格式化显示:JSON,XML,HTML,Text,Auto这几种类型的响应;
Raw:响应的原始文本,未格式化的;
Preview:视图:一些html的响应方便查看;
Visualize:可视化:一些图片验证码的响应就可以在此处查看;
-
2:cookies:当响应中有cookies时会在这里显示;
-
3:headers:响应头:展示响应头的信息;
-
4:test results:测试结果:当在请求中有断言的时候,测试的结果会在此处展示;
12 Postman创建集合目录的使用
一般情况下,我们会按照以下结构创建:
一个集合:项目名称作为集合名
多个目录:按照模块划分目录,可以嵌套多级,最后一个级别是“接口”
大概会变成以下结构:
未完待续,下期我们将继续学习断言技术讲解、接口测试项目实战测试点讲解、项目实战请求接口(URL、协议,请求头信息)介绍、项目实战请求接口(http请求-请求体、响应状态行)介绍、获取登录验证uuid脚本开发和调试实战、登录接口脚本开发和调试实战、自动关联技术之登录接口自动关联数据项目实战等内容~
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】