在Ubuntu上安装Postman有两种常用方式:
sudo apt update && sudo apt install snapd
sudo snap install postman --classic
sudo add-apt-repository https://dl.bintray.com/postman/apt
sudo apt update
sudo apt install postman
安装完成后,通过终端输入postman
或在应用菜单中启动Postman。
当后端服务未完成时,可通过Mock Server模拟API返回数据,步骤如下:
/api/users
)、Method(如GET)、Response Code(如200)和Response Body(如{"data": [{"id": 1, "name": "John"}]}
)。通过数据文件(CSV/JSON)为同一测试用例提供多组数据,提高测试覆盖率,步骤如下:
test_data.csv
):username,password,expected_status
user1,pass1,200
user2,pass2,401
test_data.json
):[
{"username": "user1", "password": "pass1", "expected_status": 200},
{"username": "user2", "password": "pass2", "expected_status": 401}
]
{{variable_name}}
语法引用数据文件中的变量(如https://api.example.com/login?username={{username}}&password={{password}}
)。pm.expect()
验证响应数据,例如:pm.test("Status code is correct", function () {
pm.response.to.have.status(pm.iterationData.get("expected_status"));
});
点击“Run collection”即可批量执行测试,查看每组数据的测试结果。通过JavaScript脚本在请求前后动态生成或验证数据,提升测试自动化水平:
// 生成10位随机字符串(字母+数字)
pm.environment.set("randomStr", Math.random().toString(36).substr(2, 10));
// 生成10位时间戳(秒级)
pm.globals.set("timestamp", Math.floor(Date.now() / 1000).toString());
request_id
是否等于前置脚本生成的randomStr
)。例如:// 打印变量值(调试用)
console.log("randomStr:", pm.environment.get("randomStr"));
console.log("timestamp:", pm.globals.get("timestamp"));
// 断言响应数据
pm.test("Response contains random parameter", function () {
const response = pm.response.json();
pm.expect(response.request_id).to.equal(pm.environment.get("randomStr"));
pm.expect(response.timestamp).to.equal(pm.globals.get("timestamp"));
});
脚本编写完成后,点击“Send”即可执行,通过“Console”查看变量输出和断言结果。以上方法覆盖了Ubuntu下Postman数据模拟的核心场景,可根据实际需求选择使用。例如,开发阶段用Mock Server模拟接口,测试阶段用数据驱动测试提高覆盖率,脚本则用于动态生成或验证数据。