Postman常用小结

这篇具有很好参考价值的文章主要介绍了Postman常用小结。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Postman基础使用

一、常用功能简介

1.1 Postman页面概览

下图使用的版本是Postman v9.31.27,不同版本的Postman页面可能略有不同,但基础用法是不变的,以此版本为例,小结常用的功能。

postman常用功能,测试工具,postman,测试工具

1.2 接口请求的编辑

进入选择的工作空间(Workspace,若无则需创建),再在当前工作空间新增集合(Collection),Postman中集合的概念类似于Eclipse中的项目(Project),集合下可新增文件夹,不同层级的文件夹均可创建其子文件夹,文件夹用于管理项目中的不同功能模块或接口用例。

postman常用功能,测试工具,postman,测试工具

(1)接口编辑区功能及作用

postman常用功能,测试工具,postman,测试工具

(2)脚本编辑

主要用于请求前预置脚本(Pre-request Script,相当于自动化中的setUp())和响应后断言(Test Script,相当于自动化中的teardown()与断言),使用JavaScript编写。需要注意的是Pre-request Script与Test脚本在Collection、Folder、API中都有,如下图:

postman常用功能,测试工具,postman,测试工具

脚本执行顺序

不同级别的脚本执行顺序如下图:

postman常用功能,测试工具,postman,测试工具

变量作用范围

若有数据驱动文件时,要注意变量的作用范围:

postman常用功能,测试工具,postman,测试工具

全局变量(Global variables):全局变量使测试人员能够访问集合、请求、测试脚本和环境之间的数据。全局变量在整个工作区中可用。由于全局变量在Postman中具有最广泛的范围,因此它们非常适合于测试和原型设计。在以后的开发阶段,使用更具体的范围。

Collection variables(集合变量):集合变量在集合中的所有请求中都可用,并且与环境无关。集合变量不会根据所选环境而更改。如果测试人员使用的是单个环境,例如用于身份验证或URL详细信息,则集合变量是合适的。

Environment variables(环境变量):环境变量使测试人员能够将工作范围扩展到不同的环境,例如本地开发与测试或生产。一次可以激活一个环境。如果测试人员有一个单独的环境,使用集合变量可能会更有效,但环境允许测试人员指定基于角色的访问级别。

Data variables(数据变量):数据变量来自外部CSV和JSON文件,用于定义在使用NewmanCollection Runner运行集合时可以使用的数据集。数据变量具有当前值,这些值在请求或收集运行之后不会持续存在。

Local variables(局部变量):局部变量是在请求脚本中访问的临时变量。本地变量值的作用域为单个请求或集合运行,并且在运行完成后不再可用。如果测试人员需要一个值来覆盖所有其他变量范围,但不希望该值在执行结束后保持不变,则本地变量是合适的。

Pre-request script示例:

背景:在vue_shop项目中,所有的接口操作都需要先登录管理员账号admin,获取token鉴权才能操作成功,此时可用接口关联。即:

在Collection中添加一个获取管理员token的Pre-request script,并将获取的token设置为Collection级别的变量。之后,此Collection中的所有接口直接从Collection级别的token变量中获取此值即可。

代码如下:

// 获取token, 避免后续需在请求头中身份认证的接口重复填充Authorization

const LoginRequest = {
  url: 'http://127.0.0.1:8888/api/private/v1/login',
  method: 'POST',
  header: 'Content-Type:application/json',
  body: {
    mode: 'raw',
    raw: JSON.stringify({ "username": 'admin',"password":"123456" })
  }
};

pm.sendRequest(LoginRequest, function (err, res) {
  console.log(err ? err : res.json());
    // slice(7)是因为响应的token的值是 Bearer eyJhbGciOiJI...,
    // Postman在设置Authorization时会自动填充Bearer,截取token[7:]
  var token = res.json().data.token.slice(7);
  pm.collectionVariables.set("token", token);
});

之后按下图的操作即可实现接口关联:

postman常用功能,测试工具,postman,测试工具

Test script示例:
// 用于响应后断言
pm.test("校验登录成功", function () {
    var jsonData = pm.response.json();
    var msg = jsonData.meta.msg;
    pm.expect(msg).to.eql("登录成功");
});

pm.test("校验登录名为admin", function () {
    var jsonData = pm.response.json();
    var username = jsonData.data.username;
    // var expection = data.username;
    pm.expect(username).to.eql("admin");
});

pm.test("校验登录账号的电话号码为12345678", function () {
    var jsonData = pm.response.json();
    var mobile = jsonData.data.mobile;
    pm.expect(mobile).to.eql("12345678");
});

pm.test("校验登录账号的邮箱地址为adsfad@qq.com", function () {
    var jsonData = pm.response.json();
    var email = jsonData.data.email;
    pm.expect(email).to.eql("adsfad@qq.com");
});

设置的四个检查点全部通过,运行结果如下:

postman常用功能,测试工具,postman,测试工具

Script帮助

在Postman中,编写script时使用右侧的快捷方法,点击即可自动生成:

postman常用功能,测试工具,postman,测试工具

或在Postman官网中,了解各常见断言方法样例,熟悉后在使用,官方文档链接为:

https://learning.postman.com/docs/writing-scripts/script-references/test-examples/,此链接若失效,可按如下方法进入

postman常用功能,测试工具,postman,测试工具

Dynamic variable的使用示例如下:

postman常用功能,测试工具,postman,测试工具

(3)API测试加解密函数
散列函数
// 导入加密包 crypto-js
var CryptoJS = require("crypto-js");

// 散列函数
CryptoJS.MD5('待加密的字符串') //返回WordArray对象
加解密函数

此处参考引用自链接:https://www.cnblogs.com/huiguo/p/16601076.html。

加密函数参数是:(明文字符串, 密钥字符串, 可选参数对象),返回密文字符串。

加密函数有Cryptojs.AES.encryptCryptojs.DES.encrypCryptojs.Rabbit.encryptCryptojs.RC4.encryptCryptojs.TripleDES.encrypt,

其中最常用的是Cryptojs.AES.encrypt

解密函数的参数是:(密文字符串, 密钥字符串,可选参数对象),返回的结果必须用.toString(CryptoJS.enc.Utf8)转为明文,因为加密后得到的密文不是字符串,它是一个CipherParams对象。
解密函数是:CryptoJS.AES.decryptCryptoJS.DES.decryptCryptoJS.Rabbit.decryptCryptoJS.RC4.decryptCryptoJS.TripleDES.decrypt

其中最常用的是 CryptoJS.AES.decrypt

其中可选参数对象常用属性:

  • mode:加密模式 【CBC ECB CFB OFB CTRGladman(CTR)】,默认为CBC
  • paddig:填充方式 【 NoPadding ZeroPadding Pkcs7(Pkcs5) Iso10126 Iso97971 AnsiX923】,默认为Pkcs7(Pkcs5)
  • vi: 偏移向量
  • formatter:自定义格式
// 导入加密包 crypto-js
var CryptoJS = require("crypto-js");

// 设置密钥
var key = CryptoJS.enc.Hex.parse("000102030405060708090a0b0c0d0e0f");

// 设置偏移量
var iv = CryptoJS.enc.Hex.parse("101112131415161718191a1b1c1d1e1f");

// 加密
var encrypted = CryptoJS.AES.encrypt("Message", 
                                     key, 
                                     { mode: CryptoJS.mode.CFB,
                                      padding: CryptoJS.pad.AnsiX923,
                                     iv: iv });

// 解密, 返回的是 CipherParams 对象
var decrypted = CryptoJS.AES.decrypt(encrypted,
                                     key,
                                    { mode: CryptoJS.mode.CFB,
                                      padding: CryptoJS.pad.AnsiX923,
                                     iv: iv });

// 获取解密字符串
var decryptString = decrypted.toString(CryptoJS.enc.Utf8);

运行效果如下:

postman常用功能,测试工具,postman,测试工具

(4)接口关联

通过全局变量、环境变量或集合变量来存储不同层级作用域的变量,通过此变量将需要传递的值(如token、sessionid、用户/商品id等使接口有变量依赖的数值)在不同的接口之间传递依赖,以达到接口关联的目的。

1.3 运行测试集

接口调试通后,即可通过Runner来选择运行同一Collection/Folder下的多个接口,可以运行Collection/Folder多次,但运行是串行迭代的,并不是并发测试。操作步骤如下:

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

运行结果/测试报告

postman常用功能,测试工具,postman,测试工具

在上图中,点击View summary查看报告汇总,以查看各接口在各迭代中的通过情况,知晓接口的成功率及稳定性:

postman常用功能,测试工具,postman,测试工具

(1)使用newman生成测试报告
  • 安装 npm环境,nods安装包见官网:http://nodejs.cn/download/;

  • 安装newman, cnpm install -g newman,常用命令如下:

    newman run [collection.json/分享的链接] [-g 全局变量文件.json] [-e 环境变量文件.json] [-r 报告格式] [--reporter-html-export 生成的报告保存路径] [-n num]
    []中的值表示可选
    -r 报告格式:能指定的报告格式有cli、html
    -n num:运行集合num次
    
  • 导出在Postman中调试好的自动化脚本,导出的文件类型为json文件:

    postman常用功能,测试工具,postman,测试工具

    • 如果有环境变量、全局变量,则亦需将之分别导出,导出的文件类型亦为json文件:

    postman常用功能,测试工具,postman,测试工具

    • 在CMD中运行结果如下:

    输出为cli格式时,会先输出各接口测试明细,再显示集合运行概览和失败的接口断言详情:

    postman常用功能,测试工具,postman,测试工具

    postman常用功能,测试工具,postman,测试工具

    输出为HTML时,CMD页面不会有任何输出,直接到对应指定的路径下找报告即可:

postman常用功能,测试工具,postman,测试工具

内容如下:

postman常用功能,测试工具,postman,测试工具

(2)使用newman-reporter-htmlextra生成测试报告

postman常用功能,测试工具,postman,测试工具

生成的报告更加友好,便于查看,具体如下:

postman常用功能,测试工具,postman,测试工具

1.4 接口文档的生成

Postman可以为集合中的API生成接口文档。

(1)单个接口文档的生成

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

(2)集合的接口文档

在将集合中的所有接口补充文档完毕后,即可查看或编辑所有接口的文档

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

1.5 Postman代理

Postman代理用于捕获API,用于调试、测试接口或cookie。

A、捕捉HTTP请求

代理设置步骤如下:

(1)点击Postman右下角的Capture requests

postman常用功能,测试工具,postman,测试工具

(2)配置代理

postman常用功能,测试工具,postman,测试工具

(3)设置代理监听的端口(默认是5555),并再次确认设置

postman常用功能,测试工具,postman,测试工具

确认后,代理已开启,如下图,Postman代理虽生效,但还要配置客户端系统的网络代理Postman才能捕获session,即第四步:

postman常用功能,测试工具,postman,测试工具

(4)配置系统代理(以WIN 10为例)

postman常用功能,测试工具,postman,测试工具

(5)捕捉session

在客户端浏览器访问服务器,则访问过程中的请求会被Postman捕捉到,其具体页面及操作如下图所示:

postman常用功能,测试工具,postman,测试工具

点击停止Stop后,会进入到捕捉概览页,即第五步。

(6)查看代理捕捉结果

postman常用功能,测试工具,postman,测试工具

同时可在配置代理时的存储Collection中查看每个session详情:

postman常用功能,测试工具,postman,测试工具

另外,也可在Postman左侧标签栏的History中查看或编辑以往代理的捕获详情:

postman常用功能,测试工具,postman,测试工具

(7)关闭代理

postman常用功能,测试工具,postman,测试工具

B、捕捉HTTPS请求

捕捉https最主要是需要导入证书,证书导入成功后的捕捉步骤和抓http是一样的。

(1)下载Open_SSL证书生成器,并按自己的系统类型安装它:

postman常用功能,测试工具,postman,测试工具

安装一直下一步即可,但安装时以下步骤一定要勾选第二项OpenSSL 二进制文件 (/bin) 目录

postman常用功能,测试工具,postman,测试工具

(2)配置环境变量,并验证

postman常用功能,测试工具,postman,测试工具

以下截图说明安装成功:

postman常用功能,测试工具,postman,测试工具

(3)安装证书

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

(4)重启Postman
(5)按抓http包的流程抓https(略)

1.6 Monitor,监视器

Monitor是基于集合的监控器,用来持续检查API的运行状况、运行测试套件或验证关键工作流。在其中可以设置包含要运行的请求的集合,并为Postman运行集合的频率设置计划。Monitor也支持数据驱动。

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

创建成功后,点击运行

postman常用功能,测试工具,postman,测试工具

若有非PASS的接口,还会有邮件预警:

postman常用功能,测试工具,postman,测试工具

尤需注意的是,非付费版Postman的Monitor无法监听本地项目(URL含localhost/127.0.0.1)和内部网址项目(URL地址以10.开头的),否则会出现:

postman常用功能,测试工具,postman,测试工具

1.7 Mock server,接口模拟

(1)Moke创建的两种入口

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

(2)配置Mock

postman常用功能,测试工具,postman,测试工具

postman常用功能,测试工具,postman,测试工具

(3)运行mock

postman常用功能,测试工具,postman,测试工具

(4)运行mock的注意点

被Mock的接口必须要有Example,才能返回Example中设置的Mock响应,被Mock的接口创建Example的步骤如下:

postman常用功能,测试工具,postman,测试工具文章来源地址https://www.toymoban.com/news/detail-777246.html

到了这里,关于Postman常用小结的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 接口测试工具——Postman使用详解

    目录 Postman简介 Postman主界面 菜单栏 工具栏 请求管理区 环境管理区 请求设计区 发送请求 发送GET请求 Postman发送GET请求 发送表单格式POST请求 发送JSON格式POST请求 发送XML格式POST请求 发送文件上传类型的请求 响应 环境和变量 环境变量设置 环境变量使用 全局变量 测试脚本及

    2024年02月08日
    浏览(44)
  • 接口测试工具:Postman的使用

    在前后端分离开发时,后端工作人员完成系统接口开发后,需要与前端人员对接,测试调试接口,验证接口的正确性可用性。而这要求前端开发进度和后端进度保持基本一致,任何一方的进度跟不上,都无法及时完成功能模块的测试。 做为后端开发人员,要求独立开发完成某

    2024年02月02日
    浏览(50)
  • Postman(接口测试工具)使用教程

    😀前言 本片文章是Postman(接口测试工具)使用教程 🏠个人主页:[尘觉主页](https://blog.csdn.net/apple_67445472?type=blog) 🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉 在csdn获奖荣誉: 🏆csdn城市之星2名 ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣

    2024年02月06日
    浏览(94)
  • 数据接口测试工具 Postman 介绍!

    此文介绍好用的数据接口测试工具 Postman,能帮助您方便、快速、统一地管理项目中使用以及测试的数据接口。 1. Postman 简介 Postman 一款非常流行的 API 调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如 Jmeter、soapUI 等。 不过,对于开发过程中

    2024年02月04日
    浏览(44)
  • Jmeter和Postman那个工具更适合做接口测试?_接口测试用postman还是jmeter

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新软件测试全套学习资料》

    2024年04月25日
    浏览(32)
  • 开发工具-网络测试工具 POSTMAN 的脚本使用

    POSTMAN 是网络编程中最常用的接口测试工具之一,能够使用脚本进行连续的自动测试。这里是以本地应用版为基础环境。 参考资料: Postman接口自动化测试 postman 可以在发送请求前使用脚本进行预处理,收到响应后使用脚本进行测试。 脚本的一些测试过程可以使用类似浏览器

    2024年02月13日
    浏览(40)
  • 接口测试工具:Postman的高级用法!

    Postman 是一款功能强大的 API 开发和测试工具,以下是一些高级用法的详细介绍和操作步骤。 一. 环境和全局变量 环境变量允许你设置特定于环境(如开发、测试、生产)的变量,全局变量则在所有环境中都能访问。 操作步骤: 1. 转到左侧的侧边栏,点击\\\"Environments\\\"。 2. 点击

    2024年02月03日
    浏览(66)
  • 接口测试工具:Postman的高级用法

    Postman 是一款功能强大的 API 开发和测试工具,以下是一些高级用法的详细介绍和操作步骤。 【文末有配套视频教程和免费的资料文档领取】 环境变量允许你设置特定于环境(如开发、测试、生产)的变量,全局变量则在所有环境中都能访问。 操作步骤: 1. 转到左侧的侧边

    2024年02月02日
    浏览(54)
  • postman接口测试工具的常规使用

    postman接口测试工具简介与安装 Postman简介: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 它提供功能强大的Web APIHTTP请求调试。它能够发送任何类型的HTTP请求(GET,HEAD,POST,PUT..),附带任何数量的参数+headers。 Postman功能: 主要用于模拟网络请求包 快

    2024年02月13日
    浏览(35)
  • 精通使用postman接口测试工具(全)

    Postman是谷歌开发的一款网页调试和接口测试工具,能够发送任何类型的http请求,支持GET/PUT/POST/DELETE等方法。Postman非常简单易用,可以直接填写URL,header,body等就可以发送一个请求,用来测试api接口非常方便。 Postman的优点 使用简单,无需搭建环境,直接使用,可以快速构

    2024年02月16日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包