Postman如何管理测试环境?
可以创建和切换postman里面的environment解决。
1、创建environment
例如创建两个环境environment,测试环境和预发布环境,填好对应的变量名称,初始值initial value和现在的值current value
2、设置environment
根据需要,可在测试环境和预发布环境之间自由切换
ps:environment还可以设置全局变量,作用于Postman所有的文件夹,当“环境变量”和“全局变量”设置同一个变量时,优先走“环境变量”的设置,当环境变量没有设置该变量时,才走全局变量的设置
Postman如何实现接口关联?
1. 通过正则表达式提取的方式或json取值的方式,提取需要的参数
2. 将参数设置为全局变量
3. 在后面接口中,使用{{全局变量}}代替要替换的参数值
Postman参数化有哪几种方式?
1. 环境变量
2. 全局变量
3. 内置函数
4. pre-scripts编写js脚本
5. Collection 变量
6. 批量执行时使用的CSV、txt文本或者Json文件
Postman中全局/环境/集合变量的优先级是怎样的?
当变量重名时, 优先级为:环境变量 > Collection集合变量 > 全局变量(Globals)
Postman中常见的接口测试断言方法有哪些?
1、断言响应码(最常用)在tests框内输入如下命令 ,验证响应码是否为200
pm.test("Status code is 200", function () { pm.response.to.have.status(200); });
2、断言响应是否包含某个字符串
pm.test("Body matches string", function () { pm.expect(pm.response.text()).to.include("string_you_want_to_search"); });
3、断言响应为json体时的某个key对应的值
pm.test("Your test name", function () { var jsonData = pm.response.json(); pm.expect(jsonData.value).to.eql(100); });
4、断言响应时间(响应时间小于200ms)
pm.test("Response time is less than 200ms", function () { pm.expect(pm.response.responseTime).to.be.below(200);});
Postman 你使用过哪些内置变量?
$randomInt 1至1000之间的随机整数 $randomUUID 随机的36个字符的UUID $timestamp 当前UNIX时间戳(以秒为单位) $guid 一个uuid-v4风格GUID $randomPassword 随机的15个字符的字母数字密码 $randomPrice 100.00至999.00之间的随机价格 $randomWord 随机词 $randomLoremText 随机数量的文本
Postman 如何做持续集成?
1. 导出Postman脚本、环境变量、全局变量等到指定的文件夹
2. 安装Newman,并执行对应的命令newman run 用例文件路径 -e 环境变量 -g 全局变量 -r生成报告
3. 创建Jenkins任务,并配置Newman执行命令