Postman Tests 中如何提取响应 Body 中的参数?

在 Postman 中,使用 JavaScript 编写测试脚本可提取响应 Body 中的参数。通过解析 JSON 格式的响应 Body,可以轻松提取所需参数,并可选择将其存储在环境变量中供其他请求使用。

用 Apifox,节省研发团队的每一分钟

Postman Tests 中如何提取响应 Body 中的参数?

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

Postman 中,你可以使用 JavaScript 编写测试脚本来提取响应 Body 中的参数。以下是一个简单的示例,演示如何提取 JSON 格式的响应 Body 中的参数。

1.示例响应 Body 参数

在 Postman 中发起一个请求后,假设接口请求返回的响应 Body 如下所示:

{
    "code": "0",
    "data": {
        "name": "Margaret"
    },
    "message": "success"
}

2.提取响应 Body 参数

如果你要提取 data 对象中的 name 字段,你可以使用以下测试脚本来提取 name 参数:

// 解析响应 Body
var body = JSON.parse(responseBody);

// 提取参数
var name = body.data.name;

// 输出参数到控制台
console.log("Name: " + name);

// 将参数存储在环境变量中(可选)
postman.setEnvironmentVariable("name", name);

在这个例子中,responseBody 是 Postman 中一个内置变量,代表当前请求的响应 Body。我们首先解析 JSON 格式的响应 Body,然后提取出 name 参数。你可以根据你的需求,对这些参数进行任何你想要的测试操作,比如检查它们的值是否符合预期。如果你想要在其他请求中使用这些参数,你可以将它们存储在环境变量中,以便在其他请求中访问它们。

Postman Tests 中提取响应 Body 中的参数

比 Postman 更好用的工具:Apifox


Apifox 中进行一些数据的提取或者断言的时候,可以通过可视化的方式来操作,省去了编写脚本的麻烦,相比 Postman 要编写脚本,会方便很多。


比如你要将下面这个接口返回数据中的 timestamp 字段提取到环境变量中,只需要打开 Apifox,然后在接口的【后置操作】中选择【提取变量】。

{
    "code": "0",
    "data": {
        "timestamp": "1708499514"
    },
    "message": "success"
}
Postman Tests 中提取响应 Body 中的参数


接着添加 JSONPath 表达式 $.data.timestamp,最后发送请求即可。一个表达式就搞定,不需要再编写什么 JavaScript 脚本了,快去试试吧!

Postman Tests 中提取响应 Body 中的参数

总结


Postman 中,使用 JavaScript 编写测试脚本可提取响应 Body 中的参数。通过解析 JSON 格式的响应 Body,可以轻松提取所需参数,并可选择将其存储在环境变量中供其他请求使用。但与 Postman 相比,Apifox 提供了可视化操作,省去了编写脚本的麻烦,更为便捷。比如,提取数据中的 timestamp 字段只需添加 JSONPath 表达式,无需编写 JavaScript 脚本。Apifox 的操作更直观,是一个更好用的工具。

Apifox

知识扩展: