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

Postman编写测试脚本

在 Postman 中,编写测试脚本通常使用 JavaScript,这些脚本可以在请求发送前后执行。以下是一些示例代码,展示了如何在 Postman 中使用测试脚本。

1. 测试脚本示例:检查响应状态码

// 测试脚本在请求发送后执行
pm.test("Response status code is 200", function () {pm.response.to.have.status(200);
});

2. 测试脚本示例:检查响应体中的数据

// 测试脚本在请求发送后执行
pm.test("Response should have valid data", function () {// 检查响应体是否包含特定的键pm.response.to.have.jsonBody('key');// 检查响应体中的数组长度pm.expect(pm.response.json().array).to.be.an('array').to.not.be.empty;
});

3. 测试脚本示例:设置环境变量

// 可以在请求发送前设置环境变量
pm.environment.set("variableKey", "variableValue");

4. 测试脚本示例:使用前置脚本修改请求

// 前置脚本在请求发送前执行
pm.globals.set("timestamp", new Date().getTime());// 修改请求头
pm.request.headers.add({key: 'Timestamp',value: pm.globals.get("timestamp")
});

5. 测试脚本示例:使用响应数据

// 使用响应数据设置环境变量
pm.test("Extract data from response", function () {var jsonData = pm.response.json();pm.environment.set("responseDataKey", jsonData.someKey);
});

6. 测试脚本示例:断言响应时间

// 检查响应时间是否在一定范围内
pm.test("Response time is less than 200ms", function () {pm.expect(pm.response.responseTime).to.be.below(200);
});

7. 测试脚本示例:使用 Postman 集合变量

// 使用集合变量
var commonHeader = pm.collectionVariables.get("commonHeader");// 添加请求头
pm.request.headers.add({key: commonHeader,value: 'someValue'
});

在 Postman 中,你可以在每个请求的 “Tests” 选项卡中编写测试脚本,或者在 “Pre-request Script” 选项卡中编写前置脚本。这些脚本可以用于设置测试条件、修改请求、验证响应数据等。

请注意,上述代码示例需要根据你的具体需求进行调整。例如,你需要将 'key''variableKey''variableValue''array''someKey' 等替换为实际的键名或值。

http://www.lryc.cn/news/393181.html

相关文章:

  • 代码随想录算法训练Day57|LeetCode200-岛屿数量、LeetCode695-岛屿的最大面积
  • StopWatch的使用
  • MySQL基础篇(三)数据库的修改 删除 备份恢复 查看连接情况
  • android手机电视相框项目-学员做出个bug版本邀请大家review提意见
  • web零碎知识2
  • Android项目框架
  • vue 模糊查询加个禁止属性
  • MySQL 主从复制中 MHA 工具的研究与实践
  • Hi3861 OpenHarmony嵌入式应用入门--TCP Server
  • Poker Game, Run Fast
  • 订单折扣金额分摊算法|代金券分摊|收银系统|积分分摊|分摊|精度问题|按比例分配|钱分摊|钱分配
  • Matlab中collectPlaneWave函数的应用
  • Linux系统的基础知识和常用命令
  • 三相异步电动机的起动方法
  • 【LinuxC语言】手撕Http协议之accept_request函数实现(一)
  • Redis Cluster 模式 的具体实施细节是什么样的?
  • 基于大模型的机器人控制
  • 在 PostgreSQL 中,如何处理数据的版本控制?
  • Rust 组织管理
  • vb.netcad二开自学笔记1:万里长征第一步Hello CAD!
  • Vue的学习之数据与方法
  • 刷题——在二叉树中找到最近公共祖先
  • nginx(三)—从Nginx配置熟悉Nginx功能
  • Python轮子:文件比较器——filecmp
  • uni-app组件 子组件onLoad、onReady事件无效
  • leetcode力扣_排序问题
  • 在 .NET 8 Web API 中实现弹性
  • linux下高级IO模型
  • 掌握Mojolicious会话管理:构建安全、持久的Web应用
  • 24西安电子科技大学马克思主义学院—考研录取情况