2022最详细postman接口巨详细教程

Get和post请求的区别:

Get一般是获取数据,post一般是提交数据

  • 本质区别是传参的方式不一样:
  • Get请求在地址栏后面以?的方式传参,多个参数之间有&分隔。
  • Post是在body以表单的方式传参。

问题:

多种环境:开发环境,测试环境,生产环境。

接口关联:需要手动关联

参数需要手动更改

Postman的环境变量以及全局变量

环境变量:环境变量就是全局变量

全局变量:全局变量就是能在任何接口里面访问的变量

获取环境变量和全局变量的值通过:{{变量名}}

接口关联

  1. 使用Json提取器实现接口关联
  • 第一个接口:
  • 使用json提取器提取accesss_token值
  • 吧返回的字符串格式的数据转换成对象的格式
  • Var result = json.parse(responseBody);
  • //吧access_token设置为全局变量
  • Pm.globals.set(“access_token”,result.access_token)
  • 第二个接口:
  • {{access_token}}
  1. postman内置动态参数以及自定义的动态参数
  • Postman内置动态参数:     示例: {{$}}
  • {{$timestamp}} 生成当前时间的时间戳。
  • {{$randomlnt}} 生成0-1000之间的随机树
  • {{guid}} 生成速记GUID字符串

3.

//手动获取时间戳

Var  time = date.now();

//设置为全局变量

Pm.globals.set(“times”,”times”);

  1. 获得创建的标签ID

(new 里面放的是正则表达式,然后放入左边界:右边界,用(.+?)来代替链接)

Var tag_id=    用来显示结果的

ResponseBody.match(new  RegExp(“”:””:(.+?)))

Console.log(tag_di)    -----打印

Postman断言

Status code:Code is 200  检查返回的状态码是否为200

Response body:Contains String 检查响应中包括指定字符串

Response body:json value check 检查响应中其中json的值

Response body:is equal to a string 检查响应等于一个字符串

Response body:Content-Type...。检查是否包含响应头Content-Type

Response time is less than 200ms : 检查请求耗时200ms

十一、postman批量运行测试用例

十二、Postman数据驱动之CSV文件和json文件的处理

十三、必须带请求头的接口

常见的请求头:

Host 请求的主机地址

Connection 链接方式

Accept 客户端接受的数据格式

X-Requested-With 异步请求

User-Agent 客户端的用户类型

Referer 请求的来源

Cookie Cookie信息

Content-Type:求情内容的格式

  • postman接口mock Servier服务器

Mock模拟

后端的接口还没有开发完成,前端的业务需要调用后端的接口。

Mock意思就是,他可以模拟后端的信息,前段需要调用什么信息,他都可以进行设置

示例: {“error_code”.0.msg:”返回成功”,data[]}

  • Postman的cookie鉴权

什么是cookie

Cookie是一小段文本,格式是key-value 形式

Cookie鉴权原理:

  1. 当客户端第一次访问服务器的时候,那么服务器就会生产Cookie信息,并且在响应头的set-Cookie里面吧生成的Cookie信息发送给客户端。
  2. 当客户端第2-N次访问服务器的时候,那么客户端就会在请求头的cookie带上cookie信息,从而实现鉴权

Cookie的分类

会话Cookie:保存在内存,当浏览器关闭之后会自动清除Cookie。

持久Cookie:保存在硬盘,浏览器关闭后不会清除,只有当失效时间到了才会自动清除。

 Postman是专为接口而生, newman(新男人)是专门为postman而生,newman可以让我们的postman脚本通过非GUI(命令行)的方式。

运行命令:newman run

 -e 引用环境变量

 -g 引用全局变量

 -d 引用数据文件

 -n 指定测试用例的迭代次数

 -r

  • postman+newman+jenkins实现接口测试持续集成
  1. 新建一个项目
  2. 设置自定义工作空间
  3. 执行windows的批处理命令
  4. 执行系统的Groovy脚本
  5. 生成的HTML的报告集成到jenkins
  • 接口测试灵魂拷问
  1. 什么是接口

接口以及接口测试的本质

软件的接口:微信提现和充值,银联支付接口,支付宝支付(鉴权码):token,key,appkey

接口包括:内部接口和外部接口

内部接口:开发人员对自己开发的对自身系统提供的接口。

外部接口:开发系统调用外部的,微信,支付宝,其他的

总结:接口就是软件提供给外部的一种服务,用于做数据传输。

  1. 软件为什么需要接口

因为接口能够让内部的数据被外部进行修改

  1. 我们为什么要做接口测试
  1. 现在很多系统都是基于前后端分离,开发的进度不一样,需要软件一开始开发出来的就接口进行测试。
  2. Mock(模拟接口的意思)
  3. 基于安全考虑,前端有验证很容易绕过,直接请求接口,特别:身份证信息,银行卡,金钱交易,
  4. 测试推崇的是测试左移,测试尽早的介入

接口测试的本质:就是测试接口能否正常的交互数据,权限控制以及异常场景,

你可能感兴趣的:(postman,测试工具,java)