You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman测试标签调用预请求脚本变量报错:{{randomTitle}}未定义

Postman预请求脚本变量在测试标签中未定义的解决办法

核心问题:测试脚本中变量调用方式错误

Postman的测试标签是执行JavaScript代码的区域,不能直接用{{randomTitle}}这种插值语法,必须通过Postman的官方API来获取变量值。

具体解决步骤

  1. 检查预请求脚本的变量设置是否正确
    确保你在预请求脚本中使用Postman官方API设置变量,示例代码如下:

    // 设置本地变量(仅当前请求生命周期内可用)
    pm.variables.set("randomTitle", "测试标题" + Math.random());
    // 若需跨请求使用,可设置环境变量(需先关联对应环境)
    // pm.environment.set("randomTitle", "测试标题" + Math.random());
    

    注意变量名randomTitle的拼写要完全一致,避免大小写或字符错误。

  2. 修改测试脚本中的变量调用方式
    把测试脚本里的{{randomTitle}}替换为对应作用域的API调用:

    // 示例断言:验证响应中包含预请求设置的随机标题
    pm.test("响应包含随机标题", function () {
        // 获取本地变量值
        var randomTitle = pm.variables.get("randomTitle");
        // 若为环境变量,改用 pm.environment.get("randomTitle")
        pm.response.to.have.body(randomTitle);
    });
    
  3. 验证变量作用域(排查用)
    如果问题仍存在,打开请求右上角的「变量」面板(眼睛图标),查看randomTitle是否存在于对应作用域:

    • 本地变量:查看「本地变量」标签
    • 环境变量:查看当前选中的环境标签

额外提示

  • 请求体、URL等区域可以正常使用{{randomTitle}}插值语法,但测试脚本属于JS代码执行环境,必须通过API获取变量。
  • 若设置变量时使用了pm.collectionVariables.set或pm.globals.set,需对应使用pm.collectionVariables.get或pm.globals.get来获取,保持作用域一致。

内容的提问来源于stack exchange,提问作者Cholis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 05:50:56