说太多都是话痨,上才艺——PostMan接口自动化测试
Posted 软件测试自动化测试
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了说太多都是话痨,上才艺——PostMan接口自动化测试相关的知识,希望对你有一定的参考价值。
目录
一、接口测试灵魂拷问
1.什么是接口?
硬件接口:USB接口(作用就是外部设置和电脑交换数据)
软件接口:统称为API,微信提现接口,充值接口。
内部接口:开发人员自己开发的接口对自己的系统提供数据交互。(模块之间)
外部接口:开发系统调用外部的接口。(微信,支付宝)
总结:接口就是软件提供给外部的一种服务,主要用于交互数据。
2.为什么需要接口?
接口能够让内部的数据被外部进行修改。
银行系统(银联支付接口)
3.为什么要做接口测试?
1.项目都是前后端分离。(mockserver)
2.基于安全考虑:前端的JS认证很容易绕过直接攻击后端接口。身份证,银行卡,金钱交易。(接口鉴权)
3.测试左移。
二、接口以及接口测试本质
接口的本质是:函数,动作。
接口测试的本质就是:测试接口(函数)是否能够正常实现数据交互,异常场景,权限控制。
三、接口返回的数据格式
1.json格式:80-90%
开发接口规则:{error_code:0,message:返回说明,data:返回数据}
error_code:错误码,0表示成功,错误码40001
message:错误码的中文说明data:接口具体的返回数据
json只包含两种数据格式
1.键值对{key:value}
2.数组[arr1,arr2,arr3]
2.html格式
3.xml格式
四、市面上接口架构
SOAP架构:webservice协议。接口地址:http://..........................?wsdlwebserivfcedictionarylanguage
RPC架构:dubbo协议。接口地址:dubbo://...............开头
SpringCloud微服务。
RestFul架构:http协议。http://...................
面试题:你对http协议了解吗?
超出面试官的预期:http协议是一种超文本传输协议,主要作用是用于浏览器和服务器之间交互数据,交互数据分为请求和响应两个部分。
请求:请求行(请求方式,请求地址,协议版本),
请求头
Host:请求的主机
Connection:keep-alive保持活跃。
Content-length:内容长度
Accept:客户端接收的数据格式:application/json
X-Requested-with:XMLHttpRequest(异步请求,一般用于登录)
User-Agent:工具名称,浏览器名称。客户端的角色。
Content-Type:请求的内容格式。x-www-form-urlencoded
Cookie:cookie信息
响应:响应行(状态码),响应头(Set-Cookie),响应正文(响应数据局)
面试题:Cookie,Session,Token相同点和不同点?
相同点:都是服务器生成的。
不同点:Cookie保存在客户端,Sessionid保存在服务器的内存,Token保存在服务器的数据库或者文件里面
五、真实企业接口测试流程
1.拿到api接口文档(抓包),熟悉接口业务流程,地址,鉴权方式,入参,出参,错误码。
2.编写计划和方案
3.编写接口用并且评审
4.执行接口测试
5.输入接口测试报告
六、接口测试工具Postman的使用
showdoc,swagger接口文档项目。
接口测试工具:postman,jmeter,soupui,apipost,fiddler,charles
安装方式:
1.通过谷歌浏览器的扩展程序。(不推荐)
2.下载exe安装包安装。8.18.2
七、Postman界面功能
1.请求页面
params:get方式传参。
Authorization:鉴权
headers:请求头
Body:post方式传参
none:没有参数
form-data:表单传参(可以传键值对文件)
x-www-from-urlencoeed(传键值对)
raw:text,.json。html,xml,javascript
binary:传二进制文件
Pre-request-Script:请求之前的脚本
Tests请求之后的断言
状态断言
业务断言
Settings:设置
cookie:用来自动化管理cookie信息。
中文说明
备注
导出接口自动化测试脚本
2.响应页面
Body:返回的是数据
Pretty:json.xml,html...
raw:文本
preview:网页
Cookie:响应的Cookie信息
Headers:响应头
TestResults:断言结果
响应码,响应信息,响应时间,响应字节数,保存响应
3.Console
控制台,必用,主要用于接口调试。
面试题:get请求和post请求的区别?
1.get请求一般是获取数据,post一般是提交数据。
2.post比get安全
3.本质的区别:传参方式不一样
get在地址栏之后以?方式传参,多个参数之间用&相隔。
post请求是通过表单传参。
工作中token是自己发get请求获取还是开发给的文档里有?
1.开发给的文档里有有这种情况,很少,不对,TCL
2.发get或post请求获取。
3.调用登录接口获取。项目的集成阶段开始实施接口测试。
学习大纲
总结
最后总结一下学习最重要的知识圈
如果你对此文有任何疑问,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣点击加入Python自动化测试技术群:953306497(备注“csdn111”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。
以上是关于说太多都是话痨,上才艺——PostMan接口自动化测试的主要内容,如果未能解决你的问题,请参考以下文章