Postman – 断言
在API测试中,断言是必不可少的。它们用于验证API响应是否与期望值相匹配。Postman是一个流行的API测试工具,它允许用户使用断言来验证API响应。在本文中,我们将了解Postman中的不同类型的断言以及如何使用它们。
Postman中的断言类型
以下是Postman中的不同类型的断言:
1. 包含断言
使用包含断言可以检查响应正文是否包含指定的值。例如,如果我们的响应正文是这样的:
{
"name": "John",
"age": 30,
"location": "New York"
}
我们可以使用以下包含断言验证是否具有正确的值:
pm.test("响应正文应包含 John", function () {
pm.expect(pm.response.text()).to.include("John");
});
2. 等于断言
使用等于断言可以检查响应正文是否等于指定的值。例如,如果我们的响应正文是这样的:
{
"name": "John",
"age": 30,
"location": "New York"
}
我们可以使用以下等于断言验证是否具有正确的值:
pm.test("响应正文应等于指定的值", function () {
pm.expect(pm.response.text()).to.eql(`{
"name": "John",
"age": 30,
"location": "New York"
}`);
});
3. 正则表达式断言
使用正则表达式断言可以检查响应正文是否与指定的正则表达式匹配。例如,如果我们的响应正文是这样的:
{
"name": "John",
"age": 30,
"location": "New York"
}
我们可以使用以下正则表达式断言验证是否具有正确的值:
pm.test("响应正文应符合正则表达式", function () {
pm.expect(pm.response.text()).to.match(/^{\n\s*"name":\s*"John",\n\s*"age":\s*30,\n\s*"location":\s*"New York"\n}$/);
});
4. 存在断言
使用存在断言可以检查响应正文是否具有指定的JSON键。例如,如果我们的响应正文是这样的:
{
"name": "John",
"age": 30,
"location": "New York"
}
我们可以使用以下存在断言验证是否具有正确的值:
pm.test("响应正文应存在 name 键", function () {
pm.expect(pm.response.json()).to.have.property("name", "John");
});
在Postman中使用断言
要在Postman中使用断言,可以使用测试脚本标签。它允许您编写测试脚本并与请求一起发送。
以下是如何使用测试脚本标签:
- 在Postman中选择您要测试的请求。
-
单击“添加测试脚本”按钮
-
在编辑器中编写测试脚本。
-
单击“发送”按钮。测试脚本会在请求后自动运行。
以下是一个示例测试脚本:
pm.test("响应正文应包含 John", function () {
pm.expect(pm.response.text()).to.include("John");
});
在此示例中,我们使用了“包含”断言来检查响应正文是否包含“John”。
结论
断言是API测试中的必要部分。Postman中提供了许多不同类型的断言,例如包含、等于、正则表达式和存在。使用这些断言,您可以验证API响应是否符合预期。要在Postman中使用它们,请使用测试脚本标签。