开发工具-网络测试工具 POSTMAN 的脚本使用

开发工具-网络测试工具 POSTMAN 的脚本使用

  • postman 脚本应用基础
  • 设置变量、获取变量示例
    • 环境变量的使用
    • 测试
  • 发送请求示例
  • 常用的变量、方法
    • responseBody 获取响应体内容
    • pm.response 获取响应信息
    • pm.expect() JSON检查
    • cheerio.load() 类似于 jquery 操作 html 元素

POSTMAN 是网络编程中最常用的接口测试工具之一,能够使用脚本进行连续的自动测试。这里是以本地应用版为基础环境。

参考资料:

Postman接口自动化测试

postman 脚本应用基础

postman 可以在发送请求前使用脚本进行预处理,收到响应后使用脚本进行测试。
在这里插入图片描述
脚本的一些测试过程可以使用类似浏览器的控制台查看,在应用程序的左下角,或使用快捷键 “Ctrl + Alt + C”

在这里插入图片描述

设置变量、获取变量示例

在脚本中设置变量后,可以在请求中使用这些设置的变量,例如:

  1. 在脚本中设置一个环境变量,变量名称 veriable_key,变量值为 veriable_value

pm.environment.set("variable_key", "variable_value");

  1. 可以使用相应的方法来获取此变量的值,并在控制台输出结果

console.log(pm.environment.get("variable_key"));

  1. 点击发送,可以在控制台查看结果

设置、获取、清除的方法可以使用右侧的链接添加
在这里插入图片描述

环境变量的使用

设置好环境变量后,可以在发送请求设置中使用,例如有一个环境变量名为 pass 的变量:
在这里插入图片描述
这样就可以使用环境变量在请求中设置参数、请求头等信息了。

测试

预请求在请求发送前处理,测试在收到响应时进行。测试方法 pm.test() 的结果是否通过会在响应栏的测试结果中进行提示。
在这里插入图片描述

发送请求示例

可以在脚本中直接发送测试请求

pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    console.log(response.json());
});

错误信息在 err 中,响应信息是 response。

常用的变量、方法

应用程序右侧可以添加一些常用的片段,除此之外还有一些能用到的变量、方法:

responseBody 获取响应体内容

responseBody 就是响应包的内容,类型为字符串。如果是 json 可以使用 JSON.parse(responseBody) 将其转化为对象。

pm.response 获取响应信息

pm.response 是pm对象的一个属性,用于记录一些 response 信息。如果 response 是 json,则可以使用 pm.response.json() 获取。

pm.expect() JSON检查

pm.expect() 方法用于检查 json 数据,例如检查一个 json 对象的 book (数组类型) 属性中第一个的 rating 属性的 numRaters 的值,为51459:

let jsonData = pm.response.json();
// 测试检查 jsonData.book[0].rating.numRaters 属性的值
pm.expect(jsonData.book[0].rating.numRaters).to.eql(51459);

cheerio.load() 类似于 jquery 操作 html 元素

当响应内容是个页面时,content_type 为 text/html,则可以使用这个方法获取页面中的各元素,并使用类似 jquery 的方式来获取需要的数据。

const $ = cheerio.load(pm.response.text())
console.log($('title').text())		// 获取 title 标签的文本内容
console.log($('#csrf').attr('value'))	// 获取标签的 value 属性值

这样就可以将需要的数据保存至环境变量中使用了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/34375.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ入门指南

人生永没有终点。只有等到你瞑目的那一刻,才能说你走完了人生路,在此之前,新的第一次始终有,新的挑战依然在,新的感悟不断涌现。 文章目录 一、MQ与RabbitMQ概述1. MQ简述2. MQ的优势3. MQ的劣势4. 常见的MQ产品5. Rab…

MySQL 数据库

文章目录 数据库的基本概念数据表数据库数据库管理系统数据库系统 数据库的发展史当今主流数据库介绍SQL Server (微软公司产品)Oracle (甲骨文公司产品)DB2 (IBM公司产品)MySQL (甲骨文公司收购…

Spring Boot日志文件

目录 前言🍭 一、日志的作用🍭 1、日志真实使用案例:🍉 二、日志怎么用🍭 1、自定义日志打印🍉 Ⅰ、在程序中得到日志对象🍓 常见的日志框架说明(了解)&#x1f35…

保姆级AT32F437 配置RT-Thread 以太网(UDP/TCP Server)

好记性不如烂笔头,既然不够聪明,就乖乖的做笔记,温故而知新。 本文档用于本人对知识点的梳理和记录。 一、前言 ENV版本:v1.3.5 rt-thread版本:V5 开发板:雅特力AT32F437 AT-START-F437 二、ENV配置 E…

java--类变量与实例变量--实验设计--村庄种树

目录 设计要求 设计流程图 程序代码 类Village代码 类MainClass代码 可以直接运行的代码 运行结果 类变量与实例变量的区别和类方法与实例方法的区别 idea的详细使用方法 设计要求 编写程序模拟两个村庄共同拥有一片森林;编写一个Village类,该类…

python爬虫:爬取网站所有页面上某些内容

举例场景:爬取腾讯课堂中,查询python的所有课程的封面图、课程标题、课程数量、课程价格,这4个部分的内容。 代码如下: import requests # import lxml # 导入用于请求的包lxml from bs4 import BeautifulSoup # 导入用于请求…

Tomcat 8.5 环境搭建指南

文章目录 导言环境搭建总结 导言 欢迎阅读本篇博客,本文将为您提供关于如何搭建Tomcat 8.5环境的详细指南。Tomcat是一个流行的开源Java Servlet容器,它提供了一个运行Java Web应用程序的平台。无论您是新手还是有经验的开发人员,本文都将帮…

4、架构:Canvas VS DOM

在可视化搭建的低代码平台中,设计器是一个非常关键的模块,可以帮助用户通过拖拽、配置等方式快速搭建应用界面。 在技术选型方面,目前市面上主流的设计器技术包括基于 HTML/CSS/JavaScript 的 Web 设计器。 在渲染方案方面,主流…

王道《计算机网络》思维导图汇总

第一章 1.1.1 概念与功能 1.1.2 组成与分类 1.1.3 标准化工作及相关组织 1.1.4 性能指标 速率 带宽 吞吐量 时延 时延带宽积 往返时延RTT 利用率 1.2.1 分层结构、协议、接口、服务 1.2.2 OSI参考模型 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 1.2.4 TCP/IP 参…

Linux下的分布式迁移工具dsync使用

一、Linux下的分布式迁移工具dsync使用 dsync 是一个在 Linux 系统上用于迁移文件和目录的工具。它可以在不同的存储设备之间进行数据同步和迁移操作。dsync 是 rsync 工具的一个衍生版本,专注于在本地文件系统之间进行数据迁移。 这里是官网:dsync 1、…

游泳买耳机买什么的比较好,列举几款实战性好的游泳耳机

对于运动用户来说,在运动时都会选择听一些节奏感比较强的音乐,让自己运动是更有活力。现在已经是三伏天中的前伏期间,不少人会选择在三伏天的日子里进行减肥瘦身,耳游泳已经成为很多人都首选运动,游泳是非常好的有氧运…

吐血整理!可免费使用的国产良心软件分享,几乎满足你办公需求

在这个信息化时代,软件已经成为我们办公和生活的必备工具。然而,市面上的大部分国产软件都需要付费才能使用,给我们的经济负担增加了不少。幸运的是,国内有一些良心软件,它们质量上乘,功能强大,…

2023牛客网秋招国内大厂最牛的 Java 面试八股文合集(全彩版)

秋收即将来临,找工作的小伙伴比比皆是,很对小伙伴早早的就开始储备技术,准备秋招面试了。 为了帮助小伙伴更好的应对面试,我拉来十几个大佬,汇总一线大厂的情况,给你整了一套超全的面试资料: 16…

深度学习项目实战二: LetNet5网络结构搭建

深度学习项目实战二: LetNet5网络结构搭建 文章目录 深度学习项目实战二: LetNet5网络结构搭建@[TOC](文章目录)一、卷积基本运算公式二、LetNet5网络1. 网络结构![在这里插入图片描述](https://img-blog.csdnimg.cn/0008fe6e5886414eac09eed49556ad99.png)2. 导入相关包3. 代码…

熔断与降级 Hystrix

一、Hystrix(豪猪)简介 1、Hystrix的设计目的 (1)对依赖服务调用时出现的调用延迟和调用失败进行控制和容错保护。 (2)阻止某一个依赖服务的故障在整个系统中蔓延,服务A->服务B->服务C,服务C故障了…

四、交换网络实验4——单臂路由配置

更多网络基础内容可见: 网络基础学习目录及各章节指引 4.6.4 配置单臂路由器 实验目的 学习配置单臂路由 实验工具 Cisco Packet Tracer 实验环境 安装模拟器的Windows系统 实验步骤 第一步:根据拓扑配置基本信息

【Linux修炼】开发工具使用

🌇个人主页:平凡的小苏 📚学习格言:命运给你一个低的起点,是想看你精彩的翻盘,而不是让你自甘堕落,脚下的路虽然难走,但我还能走,比起向阳而生,我更想尝试逆风…

无人机遥感在农林信息提取中的实现方法与GIS融合制图教程

详情点击链接:无人机遥感在农林信息提取中的实现方法与GIS融合制图 遥感技术作为一种空间大数据手段,能够从多时、多维、多地等角度,获取大量的农情数据。数据具有面状、实时、非接触、无伤检测等显著优势,是智慧农业必须采用的重…

Vue指令案例

案例需求&#xff1a; 将Vue数据模型中的数据以表格的形式渲染展示 具体代码如下&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-wid…

《MySQL》对表进行操作(DDL语句)

文章目录 &#x1f4a1;创建表&#x1f4a1;修改表&#x1f4a1;删除表 在了解下列语句前&#xff0c;先掌握一下指令 # 查看表内容 desc [表名] # 详细查看表内容 show create table [表名] \G&#x1f4a1;创建表 # 创建表 create table [表名] ([字段1] [类型1],[字段2] […