Postman中文文档——沙盒(Sandbox)
Postman沙盒Postman Sandbox是一个JavaScript执行环境,您可以在编写预请求脚本和测试脚本(在Postman和Newman中)时可用。在这个沙箱中执行您在预请求/测试脚本部分中写入的代码。常用的库和实用程序
[*]Lodash:JS实用程序库
[*]cheerio:一个快速,精简的核心jQuery API实现(版本4.6.0及更高版本)
[*]BackboneJS已弃用:提供简单的模型,视图和集合。这将在以后版本的沙箱中删除。
[*]SugarJS已弃用:使用有用的方法扩展本机JS对象。将在以后版本的沙箱中删除。
[*]tv4 JSON模式验证器:根据json-schema草案的v4验证JSON对象
[*]CryptoJS:标准和安全的加密算法。支持的算法:AES,DES,EvpKDF,HMAC-MD5,HMAC-SHA1 / 3/256/512,MD5,PBKDF2,Rabbit,SHA1 / 3/224/256/512,TripleDES
[*]xml2Json(xmlString):这个函数在Newman和Postman中是一样的
[*]xmlToJson(xmlString) 已弃用:此功能在Newman和Postman中的行为不相同
[*]postman.getResponseHeader(headerName) Test-only:返回名称为“headerName”的响应头(如果存在)。如果没有这样的头存在,则返回null。 注意:根据W3C规范,头名不区分大小写。这个方法是照顾这个。 postman.getResponseHeader("Content-type") 并且postman.getResponseHeader("content-Type") 将返回相同的值。
注意:自4.6.0版本以来,jQuery支持已经停用,支持cheerio。
环境和全局变量
[*]postman.setEnvironmentVariable(variableName, variableValue):设置一个环境变量“variableName”,并为其分配字符串“variableValue”。您必须为此方法选择一个环境才能工作。 注意:只能存储字符串。存储其他类型的数据将导致意外的行为。
[*]postman.getEnvironmentVariable(variableName):返回环境变量“variableName”的值,用于预请求和测试脚本。您必须为此方法选择一个环境才能工作。
[*]postman.setGlobalVariable(variableName, variableValue):设置一个全局变量“variableName”,并为其分配字符串“variableValue”。 注意:只能存储字符串。存储其他类型的数据将导致意外的行为。
[*]postman.getGlobalVariable(variableName):返回全局变量“variableName”的值,用于预请求和测试脚本。
[*]postman.clearEnvironmentVariable(variableName):清除名为“variableName”的环境变量。您必须为此方法选择一个环境才能工作。
[*]postman.clearGlobalVariable(variableName):清除名为“variableName”的全局变量。
[*]postman.clearEnvironmentVariables():清除所有环境变量。您必须为此方法选择一个环境才能工作。
[*]postman.clearGlobalVariables():清除所有全局变量。
[*]environment:当前环境中的变量字典。使用environment["foo"] 访问“foo”的环境变量的值。注意:这只能用来读取变量。使用setEnvironmentVariable() 设置值。
[*]globals全球变量字典使用globals["bar"] 访问“栏中的”全局变量的值。注意:这只能用来读取变量。使用setGlobalVariable() 设置值
动态变量Postman还有一些动态变量,您可以在您的请求中使用。这主要是一个实验性功能。更多功能将很快添加。请注意,在沙箱中不能使用动态变量。您只能 以请求URL / headers / body 中的格式使用它们。{{..}}
[*]{{$guid}}:添加v4风格的guid
[*]{{$timestamp}}:添加当前时间戳。
[*]{{$randomInt}}:添加0到1000之间的随机整数
Cookies
[*]responseCookies {array} Postman-only:获取为域设置的所有Cookie。您将需要启用Interceptor才能工作。
[*]postman.getResponseCookie(cookieName) Postman-only:获取具有给定名称的响应cookie。您将需要启用拦截器才能工作。
请求/响应相关属性
[*]request {object}:Postman在写脚本时使请求对象可用。该对象是只读的。更改此对象的属性将不起作用。注意:变量不会在请求对象中解析。请求对象由以下内容组成:
[*]data {object} - 这是请求的表单数据字典。(request.data[“key”]==”value”)
[*]headers {object} - 这是请求的标题字典(request.headers[“key”]==”value”)
[*]method {string} - GET / POST / PUT等
[*]url {string} - 请求的url。
[*]responseHeaders {object} 已弃用,仅测试:这是响应头的映射。这是区分大小写的,不应该使用。检查postman.getResponseHeader() 上面列出的方法。
[*]responseBody {string} 仅测试:包含原始响应正文文本的字符串。您可以将其用作JSON.parse或xml2Json的输入。
[*]responseTime {number} 仅测试:响应时间(以毫秒为单位)
[*]responseCode {object} Test-only:包含三个属性:
[*]code {number}:响应代码(200为OK,404为未找到等)
[*]name {string}:状态码文本
[*]detail {string}:响应代码的解释
[*]tests {object} 仅测试:此对象是为您填充。Postman将将此对象的每个属性作为布尔测试。
[*]iteration {number}:仅在Collection Runner和Newman中可用。表示当前的测试运行索引。从0开始。
仅测试:此对象仅在测试脚本部分可用。在预请求的脚本中使用它会引发错误。
数据文件如果您 在Collection Runner或Newman中使用数据文件,则可以访问data 对象,该对象是当前测试运行中数据值的字典。
pm。* API查看Postman Sandbox API参考。
:handshake
页:
[1]