当前位置: 首页 > news >正文

postman工具使用

基本功能操作

常用断言 

定义:postman 断言借助 JavaScript - js 语言编写代码,自动判断预期结果与实际结果是否一致。( 注意断言 代码写在 Tests 的标签中)

断言响应状态码

断言响应体是否包含某个字符串(Response body: Contains string)

断言响应体是否等于某个字符串(对象)(Response body: Is equal to a string)

断言JSON数据(Response body: JSON value check)

断言响应头(Response headers: Content-Type header check**)

全局变量和环境变量

全局变量

概念:在 Postman 全局生效的变量,全局唯一。

设置变量语法:`pm.globals.set(“全局变量名”,全局变量的值)` 

获取变量语法:`var 接收值的变量 = pm.globals.get(“全局变量名”)`

请求参数获取 (postman界面获取)语法:`{{全局/环境变量名}}` --》是两个花括号

环境变量

概念:在 特定环境(生产环境、开发环境、测试环境)下,生效的变量,在本环境内唯一。

变量的设置和获取和全局变量语法相同,将'globals' 改为 ‘environment'

Postman 请求前置脚本 >响应后置脚本也类似

在 send 按钮点击后,请求前置脚本代码,第一时间被执行。在 postman 内部实际 http请求之前。

时间戳的概念:对应绝对时间,从 1970年1月1日00:00:00 (在postman中) 到现在 所经历的秒数。

案例 > 调用百度首页接口,传时间戳给服务器

postman关联

概念:应用于 多个 http请求之间,有数据关联、或依赖关系时。

实现步骤:A接口 依赖 B接口 的数据

  • 1. 向B接口发送http请求,获取数据
  • 2. 将数据 设置 至 全局变量(环境变量)中
  • 3. A 接口 获取 全局变量(环境变量)中 数据值,进行使用。

批量执行测试用例

Postman读取外部数据文件(参数化)- 实现“数据驱动”

使用场景

当 http请求,使用的 数据有较高相似度,相同的请求时,考虑使用参数化(将数据组织到数据文件中)。

数据文件类型

CSV:

- 优点:数据组织形式简单,适用于大量数据的场合。

- 缺点:

1. 不支持 bool类型数据。(bool值会被添加双引号,变成字符串类型)

2. 不支持 多参、少参、无参、错误参数 的接口测试。

3. 不支持复杂数据类型。(如 嵌套字典、列表等)

JSON:

- 优点: 1. 支持 bool 类型。 2. 支持 多参、少参、无参、错误参数。 3. 支持复杂数据类型。 - 缺点: 对于相同数据量,json数据文件大小远大于 CSV文件。

导入外部数据文件 >以’CSV文件‘ 为例

1. 创建 xxx.csv 文件。

2. 将数据写入到 csv文件中。

3. 在 Postman 中,选中使用数据文件的 用例集,导入数据文件。

使用newman生成测试报告

步骤:

1. 批量执行测试用例集。(确认无误)

2. 导出 Export 用例集。(得到 xxxx.json文件)

3. 在 终端 中 执行命令,生成测试报告

# 现在 终端中,测试一下
newman run xxxx.json# 完整的命令
newman run xxxx.json -e 环境变量文件 -d 外部数据文件 -r html --reporter-htm]-export 测试报告名.htm]# 示例:
newman run 批量执行测试用例.postman_collection.json -r htm]--reporter-htm]-export 我的第一个测试报告.htm1如果添加 -r htm] 就报错!说明:newman-reporter-htm] 安装失败!

http://www.lqws.cn/news/69085.html

相关文章:

  • Kotlin 中 companion object 扩展函数详解
  • Kotlin 中companion object {} 什么时候触发
  • 【iOS安全】使用LLDB调试iOS App | LLDB基本架构 | LLDB安装和配置
  • Flask+LayUI开发手记(七):头像的上传及突破static目录限制
  • AI来敲门:我们该如何与焦虑共舞
  • 【Linux】Git原理与使用
  • pbootcms 搜索自定义字段模糊、精准搜索
  • Hadoop 大数据启蒙:深入解析分布式基石 HDFS
  • 使用免费wordpress成品网站模板需要注意点什么
  • Go 语言 + Word 文档模板:WordZero 引擎如何让企业文档处理效率提升 300%?
  • vulnyx loweb writeup
  • 云计算数据治理
  • Linux学习笔记:shell脚本篇(1)
  • 排序算法——详解
  • Nuxt3部署
  • 前端自动化测试利器:Playwright 全面介绍
  • 从0开始学习R语言--Day15--非参数检验
  • Origin将杂乱的分组散点图升级为美观的带颜色映射的气泡图
  • Qt OpenGL 相机实现
  • 《深入解析SPI协议及其FPGA高效实现》-- 第二篇:SPI控制器FPGA架构设计
  • 无他相机:专业摄影,触手可及
  • 相机--相机标定
  • vite构建工具
  • leetcode hot100刷题日记——35.子集
  • Rust 变量与可变性
  • 实现Cursor + Pycharm 交互
  • 【leetcode】459.重复的子字符串
  • Java实习面试题
  • arc3.2语言sort的时候报错:(sort < `(2 9 3 7 5 1)) 需要写成这种:(sort > (pair (list 3 2)))
  • Python 训练营打卡 Day 33-神经网络