Pre-request 与 Tests 类似,区别在于:Pre-request 中的脚本是在执行请求之前运行,而Tests
中的脚本则是在请求完成之后执行。
一、Pre-request Scrip的简介
- Pre-request Script是在请求发送之前通过需要执行的JS代码片段;
- 请求参数中包含随机数或者请求中包括一个时间戳,或者请求参数需要加密,都需要在该标签页下添加脚本。
所以主要学习的是变量的使用。简单的JS语法可以自行百度。
二、 变量
2.1环境变量
postman可以设置多套环境,每套环境里可以有多个环境变量。
环境变量是特定的环境下引用的变量,必须要制定对应的环境才能引用到其中的变量
2.2全局变量
postman只可以设置一组全局变量,作用于整个postman。
全局变量是在postman中所有的api都使用的变量,可以直接引用全局变量中的变量,而不用指定环境;
2.3动态变量(内置变量)
Postman也有一些动态变量,只能在request的URL、headers、body中以放在双花括号中间的形式使用。在request header中包含时间戳或者在URL参数中发送一个随机字符串,时间戳和随机字符都属于动态变量。要在预请求或测试脚本中使用动态变量,您需要pm.variables.replaceIn().例如pm.variables.replaceIn(‘{{$randomFirstName}}’)。
2.4数据变量
集合运行器让我们导入CSV或JSON文件,然后在HTTP请求和脚本中使用来自数据文件的值。这些变量称为数据变量。
数据变量使用之前要在pre-request script中定义过。eg:var name=data.name
三、全局变量的定义和使用
3.1全局变量的定义
- 通过界面操作
- 在脚本区写代码定义全局变量
调用pm的globals对象的set方法,pm.globals.set(“全局变量名”,变量值),如:pm.globals.set(“ip”,”192.168.1.2″)
以上脚本区可以是Pre-request Script或Tests代码区
3.2全局变量的使用
- 通过界面操作完
- 在脚本区写代码调用
调用pm的globals对象的get方法,pm.globals.get(“全局变量名”),如:pm.globals.get(“ip”)
pm.environment.get:从环境变量中获取参数
pm.globals.get:从全局变量中获取参数
四、动态变量的使用
postman自带的已命名变量,所有无须定义,这些变量全部是以$开头命名的。和之前讨论的自定义全局变量一样,有图形界面和代码调用两种使用方式。
4.1通过界面操作完成Gd变量使用
Postman中其他变量的引用方法: {{变量名}}
动态变量则是多一个“ $ ”进行区分: {{$变量名}}
过程基本同自定义全局变量,只是引用时在变量名前带上$,然后用{{}}包含,如:{{$randomBankAccount}}。
4.2在脚本区写代码调用
调用pm的variables对象的replaceIn方法,pm.variables.replaceIn(“Gd变量名”),如:pm.variables.replaceIn(“{{$randomBankAccount}}”)。文章来源:https://www.toymoban.com/news/detail-505348.html
资料:
https://www.likecs.com/show-204333945.html
http://www.xmxblog.com/?p=3302文章来源地址https://www.toymoban.com/news/detail-505348.html
到了这里,关于postman-请求前参数预处理(pre-request)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!