一:Postman中接口请求设置环境变量和全局变量

  全局变量和环境变量可以通过Pre-request Script和Tests设置,会在下面测试沙箱和测试断言中讲到。

  全局变量的设置:官网参考https://learning.getpostman.com/docs/postman/environments_and_globals/manage_globals/

    在这里我选择的是天气预报接口(接口文档官方一直在更新,所以看到跟我说的有啥不同,不要见怪),具体操作如下

    1.在浏览器上打开天气预报链接,查看接口文档,获取请求方法和参数,之后复制url,打开Postman新建Request,填入必要的信息发送请求查看结果。

    

    2.在小眼睛右边的设置里面添加全局变量名称和值,变量名称注意规则,不要取汉字啥的。之后在用参数的时候使用{{参数名}}双大括号括起来,在写的过程中postman会自动出来补全让你选择,url后面跟的参数也会自动修改。全局变量可以修改值,也可以删除,还可以下载成json格式的。

    

  环境变量的设置:官网参考https://learning.getpostman.com/docs/postman/environments_and_globals/manage_environments/

    依然拿天气预报接口举例(由于之前我在测试的过程中添加了环境变量,找了好长时间,才知道是有删除的,不过不像以前的版本那么明显),操作如下图所示:

        一组环境可以添加多个变量值,变量值之间不能重复,环境可以删除、修改、分享、复制、下载、导入等

    

  全局变量和环境变量的区别:全局变量提供了一组变量,这些变量在所有范围内始终可用。您可以有多个环境,但是一次只能有一个环境在一组全局变量中处于活动状态,这些变量总是可用的。环境是一组键值对。键代表变量的名称。你可以使用数据编辑器修改环境的键和值组件。如果你选择了一组环境,环境里面有跟全局变量相同的变量,值会取环境变量的值,就是环境变量优先级大于全局变量。

二:Postman中测试沙箱和测试断言实战

  

  1.测试沙箱简介:

    Postman沙箱(Sandbox)是一个JavaScript执行环境,当您为请求编写预请求脚本和测试脚本时,编写的代码在这个沙箱中进行。Postman测试沙箱其实就是结合了JS脚本完成测试中的功能,在请求发起前后实现部分测试操作。

    测试沙箱常用功能:(1).Pre-request Script 在请求前,脚本设置前置操作如设置变量等。(2).Tests在请求后对状态码、响应头、响应正文等信息进行断言操作。

  2测试断言简介:

    一般来说我们需要对测试结果进行校验,判断结果是否符合我们的预期,也就是断言。这个测试断言属于测试沙箱功能的一部分。在接口测试中一般会根据响应状态码或者响应后的数据来进行断言。

  3.常用的测试脚本(右边快捷中常用的测试语句,用到console.log()语句的时候,在发送之前先打开控制台,快捷键是crtl+Alt+C)

    (1).Pre-request Script中常用的测试脚本有设置环境和全局变量,获取环境和全局变量等。在测试沙箱中,接口请求如果set了环境变量,则优先级大于send上方选中的一组环境。

    

    

    

    (2).Tests中用到的测试脚本较多。常用的如下图所示:

    

    

    

    对于复杂数组的取值看下图操作:

    

    

三:Postman中测试集运行和导入数据文件

  在前面的时候,我们提到了测试集的一些内容,测试集的创建方法:1.直接将request保存在Collections中;2.先创建Collections,然后添加request;3.导入别人给的Collections文件。Collections可以直接运行所有的request,也可以用csv或者json文件进行导入多条测试数据。Collections runner运行在一个独立的面板中,可以设置环境,运行次数,从文件获取变量等。

  

  

  csv文件可以通过excel文件进行转换,转换完之后可以通过notepad++修改编码格式为:utf-8,否则会在运行测试集的过程中选择csv文件会出现乱码,文件中第一行必须是接口请求使用的变量。在测试沙箱中,参数的获取用 data.name(常用写法)或者 data['name']的形式来进行读取。如果测试集选择了csv文件或者json文件运行,不需要再选择一组环境值。

  

  

  

Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件的更多相关文章

  1. postman接口测试之设置全局变量和设置环境变量和全局变量

    一.概念 1.环境变量 就是接口的域名或IP地址. 2.全局变量 就是一个作用域为整个postman的变量. 二.使用场景 1.环境变量 在测试的过程中,经常会频繁切换环境,本地环境验证.发布到测试环 ...

  2. postman设置环境变量、全局变量

    讲postman环境变量设置之前,先讲一个小插曲,环境变量.全局变量的区别在于Globals,只能用一组,而Environmen可以设置多组,所以我更喜欢设置环境变量 1.环境变量-Environme ...

  3. 【原】postman设置环境变量和全局变量

    一:设置环境变量 1. postman通过变换环境变量来快速变换环境地址. 2. 现可以将localhost:80信息添加至环境 3. 点击确定后,在首页可看到已添加的环境变量信息及设置的变量信息: ...

  4. postman设置环境变量与全局变量

    1.环境变量可以设置多组 设置环境变量 编辑环境变量 2.全局变量只能设置一组 可以在Pre-request Script和Tests中设置全局变量 如:pm.globals.set("na ...

  5. Mac 可设置环境变量的位置、查看和添加PATH环境变量

    Mac 启动加载文件位置(可设置环境变量) ------------------------------------------------------- (1)首先要知道你使用的Mac OS X是什 ...

  6. Mac可设置环境变量的位置、查看和添加PATH环境变量

    Mac 启动加载文件位置(可设置环境变量) 首先要知道你使用的 Mac OS X 是什么样的 Shell,使用命令 echo $SHELL 如果输出的是:csh 或者是 tcsh,那么你用的就是 C ...

  7. Ubuntu中设置环境变量详解

    1, 为单一用户:.bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.打开用户主目录下的.bashrc,在这个文件中加入export PA ...

  8. postman接口自动化,环境变量的用法详解(附postman常用的方法)

    在实现接口自动测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录的key值,而每次请求返回的key值又是不一样的,那么这种情况下,要实现接口的自动化,就要用到postma ...

  9. 【转载自JHBlogs的博客】postman接口自动化,环境变量的用法详解(附postman常用的方法)

    在实现接口自动测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录的key值,而每次请求返回的key值又是不一样的,那么这种情况下,要实现接口的自动化,就要用到postma ...

随机推荐

  1. python 打印html源码中xpath

    实例: #coding:utf-8 from lxml import etree import urllib url=urllib.urlopen('http://www.baidu.com').re ...

  2. CentOS 6.x 无法格式化大于16TB的ext4分区处理

    CentOS 6.x 在格式化大于16TB的ext4分区时,会提示如下错误: mke2fs 1.41.12 (17-May-2010) mkfs.ext4: Size of device /dev/s ...

  3. Discrete Cosine Transform

    离散余弦变换 由于实信号傅立叶变换的共轭对称性,导致DFT后在频域中有一半的数据冗余.离散余弦变换(DCT)在处理实信号时比离散傅立叶(DFT)变换更具优势.在处理声音信号这类实信号时,DFT得到的结 ...

  4. 002_Visual Studio (gnuplot)显示数组波形

    视频教程:https://v.qq.com/x/page/e3039v4j6zs.html 资料下载:https://download.csdn.net/download/xiaoguoge11/12 ...

  5. webpack的loader的原理和实现

    想要实现一个loader,需要首先了解loader的基本原理和用法. 1. 使用 loader是处理模块的解析器. module: { rules: [ { test: /\.css$/, use: ...

  6. 【loj3119】【CTS2019】随机立方体

    题目 ​ 一个 $ n m l $ 的立方体等概率填入 $ 1-nml $ ; ​ 定义一个位置是极大的当且仅当这个位置比三位坐标的至少一维与之相等的位置的值都大. ​ 询问极大值恰好有\(k\)个的 ...

  7. 如何防范web前端安全攻击

    一.对于XSS防御: 1.不要信任任何外部传入的数据,针对用户输入作相关的格式检查.过滤等操作,以及转义字符处理.最普遍的做法就是转义输入输出的内容,对于括号,尖括号,斜杠进行转义 function ...

  8. 「ZJOI2019」麻将

    传送门 Solution  对于条件一:记录一个\(cnt\)表示牌个数\(≥2\)的个数 设\(dp_{i,0/1,j,k}\)表示考虑了\(1...i\),当前是否有对子,以\(i-1\),\(i ...

  9. c++与matcom混合编程

    #include #include #include "matlib.h" using namespace std; int main() { initM(MATCOM_VERSI ...

  10. javascript如何动态修改iframe的src

    为什么需要动态修改iframe的src?一般情况我们使用iframe,其中的src通常是写死的,但是有些时候我们不希望它是死的src,而是一个活的src. 示例代码如下: <!DOCTYPE h ...