强大的接口测试可视化工具:Postman Flows

news2024/11/16 13:32:24

Postman Flows是一种接口测试可视化工具,可以使用流的形式在Postman工作台将请求接口、数据处理和创建实际流程整合到一起。如下图所示

图片

Postman Flows是以API为中心的可视化应用程序开发界面。它提供了一个无限的画布用于编排和串连API,数据可视化来显示你的流的最终输出。

1. 能做什么

  • Business Flows

  • Integration Flows

  • Natural Language Processing (NLP) Flows

  • Slack Flows

  • DevOps Flows

  • Utility Flows

  • Miscellaneous Flows

2. 工作台导航

Postman流有一个直观的界面来创建你的应用程序,下面是Postman Flows界面的介绍。

图片

  • start block:在每个流程中都可以找到的第一个块,也是唯一不能被删除的块。应用程序表单和Webhook通过这个块发送它们的信息。

  • Send Request block:在流程中可以使用的许多其他块类型之一。块的列表在这里。

  • Group:通过使组可以复制,从而实现流程的组织、文档化和构建。有关组织流程的更多信息可以在这里找到。

  • miniMap:使较大的流程更容易导航。

  • Add annotation:添加文本注释。

  • Run:运行流程。

  • Toolbar:包含重做/撤销、缩放和适应视图按钮。

  • Text annotation:为其他用户记录流程或解释正在执行的复杂任务的一种方式。

  • Console:这是你可以找到所有API活动的地方。这对于调试流程并确保你的流程正在运行预期的信息非常有用。有关排查流程故障的指南可以在这里找到。

  • Webhook:创建一个流程,它可以按计划自动运行,或者在指定事件发生时运行。有关Webhook和自动运行的更多信息可以在这里找到。

3. Flows Catalog

postman内置100多个预先构建的Flows集合,旨在解决常见的用例。在动手操作前先探索下这些集合是了解postman Flows可以做什么的好方法。

图片

借助Flows Catalog,可以浏览和预览相应使用场景的Flow以获取用例,例如自动化联系人管理,使用AI创建自动响应或在数据库之间迁移数据。当你找到适合需求的Flow时,你可以在工作区中打开它,并在很少或没有设置的情况下开始使用它。

4. 构建Flows

构建流简单说基本上是在画布上添加Block和连接Block。流可以像发送请求并显示响应的几个块一样简单。流也可能要复杂得多,有许多相互连接的块来处理和可视化大量数据。

如果你是Flows的新手,请先浏览块列表或流教程。然后了解如何创建块并连接它们,以及如何在你的流中创建请求。随着对Postman Flows的熟悉程度,请尝试挖掘更高级的概念,例如查找和过滤数据以及使用循环和变量,还可以在下面的列表中发现更多的流概念。

  • Visualize data

  • Organize a Flow

  • Automate a Postman Flow run

  • Work with date and time

  • Troubleshooting Flows

4.1. Visualize data

输出块接受来自其他块的信息,并创建该信息的可视化。你可以从几种可视化类型中进行选择。

图片

此图显示了四种类型的输出可视化类型: 折线图、文本、Gauge和布尔值。下面的教程演示如何创建这些可视化类型中的每一种。

4.1.1. Line chart

折线图可视化类型接受两个列表,并在图表中的x和y轴上绘制它们。接收到的第一个列表是x轴,第二个列表是y轴。

要创建示例折线图输出块,请执行以下操作:

创建一个新流程,在开始块中输入以下数据,然后从下拉列表中选择JSON:

 

{
'List 1': [10, 20, 30, 40, 50, 60, 70],
'List 2': [100, 200, 300, 400]
}

  1. 将选择块连接到开始块,然后选择列表1。

  2. 将另一个选择块连接到开始块,然后选择列表2。

  3. 将两个选择块连接到单个输出块。

  4. 在输出块的下拉列表中,选择折线图并运行流程。出现折线图,数据在各自的轴上。

图片

4.1.2. Text

当输出块接收到字符串时,它会自动选择文本可视化类型并显示文本。

要创建示例文本输出块,请执行以下操作:

  1. 创建一个新流,并将带有GET请求的Send请求块添加到postman-echo.com/get。

  2. 将选择块连接到发送请求块,并输入body.headers.host。这将从响应中选择一个字符串。

  3. 将输出块连接到选择块并运行流程。输出块显示响应中的body.headers.host字符串,在本例中是postman-echo.com的。

图片

4.1.3. Gauge

仪表可视化类型使用半饼图显示值在范围内的位置。

要创建示例Gauge输出块,请执行以下操作:

  1. 创建一个新Flow,并添加一个发送请求块,其中包含一个GET请求t o techcrunch.com/wp-json/wp/v2/posts。

  2. 将评估块连接到发送请求块,然后输入此FQL查询: $ count(value1.body) 以计算响应主体有多少项。

  3. 将输出块连接到评估块,然后从下拉列表中选择Gauge。

  4. 运行Flow。Gauge将响应主体中的项目数显示为图形的阴影部分。

要设置Gauge的最小值和最大值,请选择输出块的设置图标。

图片

4.1.4. Boolean

当输出块收到true或false消息时,它会自动选择布尔可视化类型,显示True或False。

要创建示例布尔输出块,请执行以下操作:

  1. 创建一个新流,并将带有GET请求的Send请求块添加到postman-echo.com/get。

  2. 将评估块连接到发送请求块,然后输入此FQL查询: value1.http.status = 200,以检查响应是否具有200状态代码。

  3. 将输出块连接到评估块并运行流程。如果响应具有200状态代码,则输出块将显示一个圆圈,显示为True。如果没有,圆圈显示False。

图片

你可以从输出块的下拉菜单中选择下面列出的输出格式。选择示例链接以在Postman中打开显示每种输出格式的流。

  • 文本-以文本行的形式显示连接到输入的信息。文本示例

  • 数字-如果连接到输入的信息是数字,则显示整数。数字示例

  • 布尔值-显示true或false值。如果连接到输入的值不是true/false或0/1,则始终显示true。布尔示例

  • JSON-以JSON格式显示连接到输入的信息,使你能够查看和选择数据。JSON示例

  • 条形图-显示连接到输入的一组或多组信息。条形图示例

  • 折线图-显示连接到输入的X和Y坐标的线。折线图示例

  • Gauge-当输入为百分比时显示一个数字。仪表示例

  • 表-将连接的输入显示为具有行和列的表。表格示例

  • Markdown-显示显示所有Markdown注释的文本。降价示例

  • URL-显示连接到输入的URL的超链接。URL示例

  • Image-显示来自连接到输入的URL的图像。图像示例

  • 视频-显示来自连接到输入并使其能够播放的URL的视频。视频示例

  • YouTube-显示来自连接到输入并使其能够播放的URL的YouTube视频。YouTube示例

4.2. Organize a Flow

对于用户而言,具有许多块的流可能是具有挑战性的。通过使用颜色、注释和分组,你可以帮助同事和用户理解更复杂的流程。

4.2.1. 颜色

可以将每个块配置为以颜色突出显示。这使得单个块与它们周围的其他块更容易区分。你可以通过选择一个块,然后选择出现在块上的左上角的绘制图标来添加颜色。

图片

4.2.2. 注释

当与其他人合作或在公共工作区中放置流程时,直接在画布上添加方向是有帮助的。这有助于解释如何使用流以及某些块在做什么。选择工具栏中的 “添加文本” 按钮以添加注释。在注释中选择文本将打开 “文本格式” 菜单,该菜单具有粗体,斜体和标题选项。如果复制链接,然后突出显示一些文本并粘贴链接,突出显示的文本将成为超链接。

图片

4.2.3. 分组

你可以将块和注释组合在一起。然后可以命名该组,指定颜色,调整大小,并从中添加或删除块。当执行诸如发送电子邮件之类的任务可能涉及多个块时,这可能很有用。

要访问分组菜单,请按住Shift键并在一组块周围拖动光标。你也可以在选择要添加的块的同时选择和保持一个或者一个Ctrl。选择文件图标将创建一个组。

图片

4.3. 自动化运行Flows

你可以将流发布到云,以便可以使用webhook触发该流。这使你的流能够在云中自动运行。

Postman Flows和webhook

Webhooks是一个系统告诉另一个系统某些信息已更改的一种方法。它的工作原理类似于在手机上推送通知。电子邮件应用程序不会不断检查你的电子邮件应用程序以查看是否有任何新邮件,而是会向你发送通知,告知你已收到新电子邮件。如今,许多具有api的服务也提供了webhooks,作为其系统与你的系统之间进行通信的一种方式。

当一个流发布到云中时,该流将在每次从另一个服务接收到webhook事件时运行。这很有用,因为流可以自动运行,并且不需要你的计算机打开,因为这些流在Postman的云中运行。

发布你的Flows

在侧边栏的 “应用程序” 下,选择Webhook生成webhook并将本地流上传到Postman的云。

图片

你可以在请求中使用生成的webhook来触发你发布的流。侧边栏中的Webhook部分计算你的流的webhook收到了多少请求。

图片

  1. 选择预览在本地测试webhook。你可以添加请求主体来模拟传入的webhook数据。

  2. 选择 “发布” 以在对流程进行更改后将你的流程重新上传到Postman的云。

  3. 选择 “更多操作” 图标,以配置webhook,查看流的已发布版本或取消发布流。你可以配置你的webhook接收到的传入数据 (仅正文或完整请求),以及服务器是否会以默认响应或以空主体进行响应。

要查看已发布流的实时日志,请选择 “更多操作” 图标 “> 查看已发布版本”> “查看实时日志”。

图片

4.3.1. 触发webhook

通常在使用webhooks时,第三方服务会将数据发送到已发布的Flow的webhook。你可以将侧边栏中的webhook下的Webhook URL提供给其他服务,以便他们可以向其发送数据。设置完成后,你可以查看实时日志,并查看来自其他服务的请求用作测试数据的外观。流也可以通过向Webhook URL发出请求来手动运行。

4.4. 使用数据和时间

许多api期望日期和时间的格式不同。流具有许多内置的FQL函数来处理所需的任何格式。

日期和时间是如何存储在流程中的

所有三个流程日期和时间块 (现在,日期,日期和时间) 都将日期和时间存储为数字。该数字是一种常见的格式,是自1970年1月1日00:00:00 UTC以来的毫秒数 (称为Unix时间)。这简化了日期比较,并且可以根据需要将数字转换为其他格式。

图片

对不同的格式使用FQL

ISO 8601格式常用于许多api。FQL具有now功能,该功能以ISO格式2023-08-11T02:03:46.145 00:00打印出当前时间戳。如果API需要时间戳的缩短版本,则fromMillis函数接受一种称为图片的格式,可以在此处找到。例如,可以使用下面的FQL来获得没有时间的ISO格式的日期:

图片

4.5. 数据查找和过滤

通常,需要检查流中的信息是否具有一定的值。根据从API返回的信息的结构,有几种不同的方法可以使用FQL解决此问题。

4.5.1. 包含

contains是检查某些引用信息是否具有单词或模式 (正则表达式) 的最直接方法。由于包含返回true或false,因此通常与If块一起使用。下面的示例说明了当输入具有期望值时,信息如何仅通过If块传递。

图片

4.5.2. 过滤器

使用筛选器从较大的元素列表中获取元素子集。要使用filter,该函数看起来像 $ filter (列表名称,fn($ v,$ i,$ a) { filter condition }),其中 $ v是列表中的值,$ i是索引 (第零项,第一项,第二项,第三项),$ a是整个列表。$ v通常是过滤的重要值,并且是实际需要使用的唯一值。在下面的示例中,有一个公司列表,但是对于其余的流程,只需要启用的公司。

图片

4.5.3. 计数

count返回列表中的项目数。这是常用的,因为当流程正在寻找一个特定的项目时,api通常会返回项目列表。发生这种情况时,流程需要检查API是否仅返回一条记录,或者是否存在列表,并且需要进一步过滤。此函数有用的另一种情况是从列表中生成随机结果。在下面的示例中,配方API返回配方列表,流程从列表中随机选择一个。

图片

4.5.4. distinct

distinct仅返回列表中的唯一项目。有时,结果列表中有重复的条目 (也许有人用两封不同的电子邮件注册了),流程需要将它们过滤掉。

图片

4.6. 故障排查

无论你是使用代码开发应用程序还是使用Postman流构建流,有时事情都无法按预期工作。调试是寻找流程正在做的事情与预期的事情之间差异的根源的过程。流有几个内置工具来帮助调试。

发送请求块中的成功和失败端口

当发送请求块运行时,可以在成功或失败输出 (取决于结果) 中运行请求后查看该块的输出。这对于检查请求是否成功并返回预期的信息很有用。

图片

  这是我整理的《2024最新jmeter接口测试和jmeter接口自动化测试全套教程附带性能测试》,以及配套的接口文档/项目实战【网盘资源】,需要的朋友可以下方视频的置顶评论获取。肯定会给你带来帮助和方向。

b站最新最全的jmeter接口测试和jmeter接口自动化测试,jmeter性能测试保姆级全套教程!

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[C#]winform基于深度学习算法MVANet部署高精度二分类图像分割onnx模型高精度图像二值化

【训练源码】 https://github.com/qianyu-dlut/MVANet 【参考源码】 https://github.com/hpc203/MVANet-onnxrun 【算法介绍】 二分图像分割(DIS)最近出现在从高分辨率自然图像中进行高精度对象分割方面。在设计有效的DIS模型时,主要的挑战是…

XMGoat:一款针对Azure的环境安全检测工具

关于XMGoat XMGoat是一款针对Azure的环境安全检测工具,XM Goat 由 XM Cyber Terraform 模板组成,可帮助您了解常见的 Azure 安全问题。每个模板都是一个用于安全技术学习的靶机环境,包含了一些严重的配置错误。 在该工具的帮助下&#xff0c…

景区门票预订系统开发方案概述

随着旅游业的蓬勃发展,提升游客体验、优化景区管理成为了各大景区亟待解决的问题。景区门票预订系统的开发,正是顺应这一趋势的重要举措。以下是一个简要的景区门票预订系统开发方案概述,旨在通过科技手段实现票务管理的智能化、便捷化。 一、…

faiss向量数据库测试《三体》全集,这家国产AI加速卡,把性能提了7倍!

在人工智能和机器学习技术的飞速发展中,向量数据库在处理高维数据方面扮演着日益重要的角色。近年来,随着大型模型的流行,向量数据库技术也得到了进一步的发展和完善。 向量数据库为大型模型提供了一个高效的数据管理和检索平台,…

如何将音乐保存为文件格式为铃声,怎么把音乐保存为MP3格式

许多小伙伴在听到好听的音乐时,会将其下载保存。如果需要将音乐文件格式转换成来电铃声时,就需要借助专业的音频处理软件了,音频处理软件可以帮助我们转化音乐文件格式,那么下面就来给大家介绍如何将音乐保存为文件格式为铃声&…

Kali Linux-设置系统24小时时间制

文章目录 设置系统24小时时间制 设置系统24小时时间制 在Kali Linux中,如果系统时间不是以24小时制显示,你可以通过修改系统时间格式配置文件来调整为24小时制。以下是具体的操作步骤: 1.编辑/etc/locale.conf配置文件。 vim /etc/locale.c…

【gitlab】gitlab-ce:17.3.0-ce.0 之2:配置

参考阿里云的教程docker的重启 sudo systemctl daemon-reload sudo systemctl restart docker配置 –publish 8443:443 --publish 8084:80 --publish 22:22 sudo docker ps -a 當容器狀態為healthy時,說明GitLab容器已經正常啟動。 root@k8s-master-pfsrv:~

Python WebSocket自动化测试:构建高效接口测试框架

为了更高效地进行WebSocket接口的自动化测试,我们可以搭建一个专门的测试框架。本文将介绍如何使用Python构建一个高效的WebSocket接口测试框架,并重点关注以下四个方面的内容:运行测试文件封装、报告和日志的封装、数据驱动测试以及测试用例…

调查显示:超过30 %企业遭受过网络攻击,如何防范?

对于企业来讲,屡禁不止的网络安全攻击始终是阻碍业务发展的重大隐患。调查结果显示,有近8成的企业将网络安全视为企业很重要的工作之一,另外,有超过三成的企业遭受过网络安全攻击。 企业作为网络安全事故的责任承担方,…

synchronized和Lock(ReentrantLock)及二者区别

synchronized 是用于实现线程同步的关键字。它提供了两种主要的方式来保证多个线程访问共享资源时的互斥性和可见性:同步块和同步方法。 同步块 同步块允许你指定一个对象作为锁,并保护一段代码区域。这样,同一时刻只有一个线程可以执行这…

ChatGPT 为什么不建议关闭 MySQL 严格模式?

社区王牌专栏《一问一实验:AI 版》全新改版归来,得到了新老读者们的关注。其中不乏对 ChatDBA 感兴趣的读者前来咨询,表达了想试用体验 ChatDBA 的意愿,对此我们表示感谢 🤟。 目前,ChatDBA 还在最后的准备…

记录一次 npm ERR! cb() never called! 解决过程

gitlab cicd过程,使用docker部署Vue3前端项目,报错如下: 针对 npm ERR! cb() never called! 这个报错,网上有很多解决方案,大都是清空缓存,重新运行npm 之类的。笔者全都试过,无法解决问题。笔者…

linux,docker查看资源消耗总结

在linux和docker中我们将一个程序运行到后台,之后我们想查看它的运行状态,对于服务器的资源消耗等等 1.linux查看进程 ps aux | grep python ps aux:列出所有正在运行的进程。grep python:过滤出包含 python 的进程 2.linux查…

springCloud集成activiti5.22.0流程引擎(分支)

springCloud集成activiti5.22.0流程引擎 点关注不迷路,欢迎再访! 精简博客内容,尽量已行业术语来分享。 努力做到对每一位认可自己的读者负责。 帮助别人的同时更是丰富自己的良机。 文章目录 springCloud集成activiti5.22.0流程引擎一.Sprin…

你知道家电的保质期吗?

家人们,你们有关注过家里的电器用了多少年了吗? “家电不坏,就能一直用。” “坏了修一修,一样能用。” 很多家长都有这样的想法,家里的电器即使出了故障,修一修也就继续用了。 其实,家电也…

打造智能化直播商城平台:AI与大数据在平台开发中的应用

在当今竞争激烈的电商市场中,直播商城平台已经成为品牌和商家实现差异化竞争的重要工具。随着人工智能(AI)和大数据技术的不断进步,智能化直播商城平台的开发成为了行业的新趋势。这些技术不仅可以优化用户体验,还能提…

AI革新体育:IBM携手USTA升级美国公开赛观赛体验

IBM和美国网球协会(USTA)合作,在2024年美国网球公开赛中引入了创新的AI技术,为观众和选手带来全新的体验。8月19日赛事开幕,IBM的watsonx平台将推出多项新功能,增强三周赛事的互动性。 喜好儿网 IBM的Gra…

Prometheus:pushgateway使用

1 项目目标 (1)熟练部署pushgateway (2)使用api增删改查数据 (3)使用python Client SDK Push数据到pushgateway 2.1 规划节点 主机名 主机IP 节点规划 prome-master01 10.0.1.10 服务端 prome-no…

探索PyUSB:Python与USB设备的桥梁

文章目录 探索PyUSB:Python与USB设备的桥梁背景:为何选择PyUSB?什么是PyUSB?如何安装PyUSB?简单的库函数使用方法场景应用常见问题与解决方案总结 探索PyUSB:Python与USB设备的桥梁 背景:为何选…

GD32F470 FREERTOS + lwip UDP丢包问题解决

现象:使用GD32F470Z评估板已经官方FreeRTOSUDP例程测试,使用上位机UDP测试工具,连续收发UDP数据包,每发送65535次数据,第65536包数据就会丢。如下图所示: 测试了很多次,都是在65536的时候停了&a…