Postman速查表
这份Postman速查表基于Postman官方文档页面(链接如下)和对Postman的整体理解:
https://learning.postman.com/docs/getting-started/introduction/
a. 变量
所有变量都可以通过Postman的GUI手动设置,并且它们具有定义的范围。变量的值也可以通过在“预请求脚本”或“测试”选项卡下编写的脚本设置。
变量可以以{{<变量名>}}的格式添加到请求URL、Headers和Body中。
在请求URL中的用法:
https://{{domain}}about/{{id}} Usage in request Headers(key-value): X-{{key}}:value
在请求Body中的用法:
{"registration_id": "{{Id}}", "firstname": "Postman"}
b. 全局变量
当我们需要向其他请求发送数据时,使用全局变量。添加全局变量的脚本可以包含在Postman的“测试”或“预请求脚本”选项卡中。
设置全局变量:
pm.globals.set('<name of Global variable>', '<value of variable>')
获取全局变量的值:
pm.globals.get('<name of Global variable>')
删除全局变量的脚本:
pm.globals.unset('<name of Global variable>')
删除所有全局变量的脚本:
pm.globals.clear()
c. 集合变量
集合变量是全局变量和环境变量的一个很好的替代方案。如果只有一个环境,它们也可以用于URL/身份验证凭据。添加集合变量的脚本可以包含在Postman的“测试”或“预请求脚本”选项卡中。
设置集合变量:
pm.CollectionVariables.set('<name of variable>', '<value of variable>')
获取集合变量的值:
pm.CollectionVariables.get('<name of Collection variable>')
删除集合变量的脚本:
pm.CollectionVariables.unset('<name of Collection variable>')
d. 环境变量
环境变量用于特定环境。它们是全局变量的一个很好的替代方案,因为它们的范围有限。添加全局变量的脚本可以包含在Postman的“测试”或“预请求脚本”选项卡中。
环境变量用于保存特定于环境的变量、URL以及向其他请求发送数据。
设置环境变量:
pm.environment.set('<name of Environment variable>', '<value of variable>')
获取环境变量:
pm.environment.get('<name of Environment variable>')
删除环境变量:
pm.environment.unset('<name of Environment variable>')
删除所有环境变量的脚本:
pm.environment.clear()
获取活动环境名称的脚本:
pm.environment.name
e. 数据变量
数据变量用于在集合运行器或Newman中执行特定迭代。它们主要用于从CSV/JSON文件中获取多个数据集的情况。
获取数据变量的值:
pm.iterationData.get('<name of Data variable>')
f. 本地变量
本地变量可以在请求内或通过集合运行器/Newman执行时访问。这些变量在请求执行后默认会被删除。
设置本地变量:
pm.variables.set('<name of Local variable>', '<value of variable>')
获取本地变量:
pm.variables.get('<name of Local variable>')
g. 动态变量
动态变量可以与字符串一起使用以生成动态和不同的数据。
JSON body中动态变量的示例:
{"email": "test.{{$timestamp}}@gmail.com"}
h. 调试变量
启动Postman控制台,并在“预请求脚本”或“测试”选项卡下的脚本中添加console.log来调试变量。
console.log(pm.globals.get('< name of Global variable >')
i. 断言
断言添加到带有pm.test回调的块下。
pm.test("Response Status Code", function () { pm.response.to.have.status(201) })
j. 跳过测试
要跳过测试,我们必须添加pm.test.skip。跳过的测试在报告中可见。
pm.test.skip("Response Status Code", function () { pm.response.to.have.status(201) })
k. 测试失败
在Postman中,我们可以显式地使测试失败,而无需添加断言。
pm.expect.fail('Scenario is failed');