DAY1课题:Postman基础应用&接口测试流程&接口架构和协议目录 一、什么是接口?
二、接口协议的全局观
三、http协议详解
四、返回数据
五、接口测试流程和方案
四、微信公众号的接口
五、Postman安装和界面的介绍
六、Postman接口测试发送get请求
七、微信公众平台生产环境 例子:
获取接口统一鉴权码token接口
创建的标签接口
获取公众号已创建的接口
删除标签接口
编辑标签接
一、什么是接口?
内部接口:开发人员自己开发的给被测系统调用的接口。1.提供给内部系统使用(接口不公开,只测正例)2.提供给外部系统使用(接口公开,测试正例,反例,鉴权.....)外部接口:系统调用外部的已经存在的接口。(只测正例)二、接口协议的全局观
1.基于SOAP架构。协议:webservice,数据通过xml交互。 测试工具:soupui2.基于RPC架构,协议:dubbo,thrift,RMI,数据通过json交互。 springcloud微服务。 测试工具:jmeter3.基于restful架构,协议:http协议。数据通过json交互。 测试工具:postman三、http协议详解
1.什么是http协议http协议是一种超文本传输协议,主要用于客户端和服务器之间交互数据。交互分为请求和请求:请求行,请求头,空一行,请求正文(报文,数据) 响应:响应行,响应头,空一行,响应正文(报文)
文章图片
请求行:请求方式,请求路径,协议 GEThttp : // 47.107.116.139 / fangwei / m . php ? m = Public & a = login &HTTP / 1.1核心请求头:Accept :客户端接收的数据格式。 Content ‐ type : 发送请求的数据格式。application / x ‐ www ‐ form ‐ urlencoded表单。application / jsonjsonmultipart ‐ form文件上传 User ‐ Agent :客户端的类型谷歌,火狐, IE , Postman , Jmeter 、、、、X ‐ Requested ‐ With异步请求(一般应用于登录或者局部刷新, ajax 技术)Cookie : Cookie 信息。空一行请求正文
文章图片
响应行:协议,响应码 ( 1 XX 信息, 2 XX 成功 , 3 XX 重定向, 4 XX 客户端错误, 5 XX 服务器错误 ) ,响应信息HTTP / 1.1 200 OK响应头Server :nginxDate :Sun ,07Nov2021 12 : 22 : 30 GMTContent ‐ Type :text / html ; charset = utf ‐ 8Connection :keep ‐ aliveVary :Accept ‐ EncodingX ‐ Powered ‐ By :PHP / 5.6.36Set ‐ Cookie :PHPSESSID = iuf17a5nlq98rcgfj126vfll06 ; path =/ ; HttpOnlyExpires :Thu ,19Nov1981 08 : 52 : 00 GMTCache ‐ Control :no ‐ store ,no ‐ cache ,must ‐ revalidate ,post ‐ check = 0 ,pre ‐ check = 0Pragma :no ‐ cacheContent ‐ Length :3052空一行响应正文 四、返回数据 主要 html,json,xml 这三种。 json:数据格式。(字符串,字典的字符串的形式。),由两类数据组成。1.键值对,{key:value,key2:value2} 2.数组(列表):[arr1,arr2,arr3]dict,json,yaml可以相互转换。不成文的规定:一般接口返回的数据按如下格式开发:{code:返回码,message:返回信息,result:返回数据}五、接口测试流程和方案1.拿到api文档,(规范:swgger,showdoc,不规范:word,excel,没有就只能抓包和录 制),熟悉接口业务,接口地址,鉴权方式,入参,出参,错误码等等。
2.编写接口测试用例以及评审。思路:先写正例:输入正确的入参,接口返回成功。(多种请求方式的情况下有多个正例。)再写反例:(应用功能测试思路)鉴权反例:必填,错误,过期....参数反例:必填,类型异常,长度异常。其他反例:错误码,黑名单,次数调用限制,分页场景(负数页,0页,中间页,最后一页,超出最后一页。)3.使用接口测试工具执行接口测试4.输出接口测试报告(word文档类型,HTML类型) 四、微信公众号的接口微信公众平台点击 开发文档 =》测试号申请
文章图片
文章图片
获取测试号信息 appID:XXXappsecret:XXX。 postman+newman+git+jenkinsJmeter+ant+Git+Jenkinssoupui,apipost, fiddler,charles五、Postman安装和界面的介绍 最新的版本是9.0,稳定版是8.0 官方: https://dl.pstmn.io/download/latest/win64接口测试核心填写的就四个部分:1.请求方式,请求路径,请求数据,请求头。鉴权码:鉴定你是否有访问接口的权限。 csrf_token.access_token ,key,token,appkey获取方式:1.通过一个独立的接口获取。2.登录之后自动生成。六、Postman接口测试发送get请求 请求页签的详细说明:
文章图片
params:get请求传参,(或者如果post或其他请求路径中有参数那么也会自动填充到params)Authorization:鉴权方式。headers:传请求头Body:post请求传参。
文章图片
form-data:可以传文件也可以传表单键值对。x-www-form-urlencoded:只能传表单键值对。raw:json,text,html,javascript,xmlbinary:二进制文件上传。Pre-request-Script:请求之前的脚本。tests:请求之后的断言(判断预期是否与实际一致)setting:设置cookie:是postman工具自动的保存以及发送cookie。响应页签的详细说明:
文章图片
Body:返回的数据,Pretty以json./...格式,Raw文本,Preview网页Cookie:响应的Cookieheaders:响应头Test Results 断言的测试结果 200:状态码OK:响应信息388MS响应时间面试题:get请求和post请求的区别?1.get一般是获取数据,post一般提交数据。2.post比get安全3.本质区别在于:传参方式不一样。get在地址栏的后面以?方式传参,多个参数之间用&分隔。post是在body以表单的方式传参。七、微信公众平台生产环境 例子: 先设置基础url
文章图片
获取接口统一鉴权码token接口
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
文章图片
创建的标签接口
https://api.weixin.qq.com/cgi-bin/tags/create?access_token=ACCESSTOKEN
文章图片
获取公众号已创建的接口
https://api.weixin.qq.com/cgi-bin/tags/get?access_token=ACCESSTOKEN
文章图片
删除标签接口
https://api.weixin.qq.com/cgi-bin/tags/delete?access_token=ACCESSTOKEN
文章图片
?
编辑标签接口
https://api.weixin.qq.com/cgi-bin/tags/update?access_token=ACCESSTOKEN
文章图片
?
【Postman|3天精通Postman---基础应用&接口测试流程&接口架构和协议】
推荐阅读
- postman|Postman进阶篇(一)-pre-request script入门及实现参数使用随机数
- postman|postman接口测试中pre-request scripts使用
- 软件测试|postman|接口测试 | pre-request script 场景应用
- Postman|postman参数化--pre-request script
- SQL注入|SQLmap的下载和安装,以及其参数大全和使用教程(值得收藏)
- 信息收集|信息收集——子域名收集
- 运维测试|谷歌添加postman插件
- 技术分享|自动化测试系列(三)|UI测试
- shell脚本------条件语句