当前位置: 首页 > 知识库问答 >
问题:

邮递员复本领取/出口+再进口

袁耀
2023-03-14

相对较新的邮递员,有以下简单场景的问题-我有一个邮递员请求的集合,都指向我正在开发我的应用程序的本地IP。假设我完成了本地开发,在其他服务器上部署了应用程序,并希望重复以前在该服务器上创建的请求。我知道可能有一种方法是使用变量

但是,与此相反,我导出了集合,并手动编辑了导出的JSON文件,用新的服务器IP替换了所有旧的本地IP。还将集合名称和ID更改为任意值。当导入返回邮递员工作时,我看到请求,它们都有旧的IP仍然挂在那里,好像我的替代品不工作,或者好像邮递员不知何故缓存了请求,并认为新的集合和旧的是一样的。我还尝试“复制”一个集合,并导出重复的集合/替换/再次导入--但行为似乎是一样的。

我是否错过了什么,或者我应该以不同的方式处理我想做的事情?谢谢你。

共有1个答案

刘运浩
2023-03-14

嗯,我笨到已经用“原始”URL替换了,而下面是“主机”和“端口”的旧值,这是Postman构造URL的来源:

 {
    "info": {
        "_postman_id": "1499274a-07bc-4ed2-87d4-b10d0cef8f8f",
        "name": "some-collection-DEVSERVER",
        "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
    },
    "item": [
        {
            "name": "login (success - bad locale)",
            "request": {
                "method": "POST",
                "header": [
                    {
                        "key": "Content-Type",
                        "name": "Content-Type",
                        "value": "application/json",
                        "type": "text"
                    }
                ],
                "body": {
                    "mode": "raw",
                    "raw": "{\n\t\"username\" : \"TEST\",\n\t\"password\" : \"123456\",\n\t\"locale\" : \"asd\"\n}"
                },
                "url": {
                    "raw": "http://SERVER-IP:SERVER-PORT/new-path/login",
                    "protocol": "http",
                    "host": [
                        "127",
                        "0",
                        "0",
                        "1"
                    ],
                    "port": "8081",
                    "path": [
                        "old-path",
                        "login"
                    ]
                }
            },
            "response": []
        },
      ...
   ]
}

因此,在建议使用变量之后,我最终创建了两个集合变量“base-URL-LOCAL”和“base-url-server”,它们扮演常量的角色,以及第三个变量“base-url”,例如,它的值可以是{{base-URL-LOCAL}}(初始值和当前值都必须更新)。在导出的JSON集合中,我用如下所示替换了所有“URL”元素:

"url": {
    "raw": "{{base-url}}/login",
    "host": [
        "{{base-url}}"
    ],
    "path": [
        "login"
    ]
}

这样,获得我的集合的人就不必设置预定义的环境,并且必须编辑集合变量,例如将base-url设置为{{base-URL-SERVER}}

 类似资料:
  • 是否有一种简单的方法可以捕获PostMan脚本中请求和响应的响应时间? 我尝试通过创建一个集合来完成以下工作,然后在测试中编写以下脚本来捕获值并将其放入环境变量中: 这为我提供了环境变量中的值,但我每次都需要专门去那里检查时间。 我尝试的另一种方法是对集合使用“Runner ”,并从导出结果中的“totalRequestTime”值获得响应时间。但是当我运行大约50个请求时,很难为每个单独的请求捕

  • 如何调用POST API请求(具有用户名请求主体的登录API 登录API:POST方法;请求正文:用户名和密码;响应正文:令牌。获取客户记录API:GET方法;请求URI: /token/ 只想在邮递员的一个测试中涵盖这种端到端场景。任何人都可以帮我提供预请求脚本吗?我应该如何调用登录 API?

  • 我创建了对在 AWS 服务器上运行的后端的邮递员 POST API 调用 我得到了适当的回应。我的测试人员(远程工作的人)做了同样的事情,得到了错误的API响应(不是我们所期望的)。 我试着在我们公司的另外4台电脑上做同样的测试用例,得到了同样的正确响应。我的测试人员的邮递员有什么问题?

  • 我有一个web API,我正在使用Postman测试。当我点击“发送”按钮时,Postman将数据发送到web API,这样我就可以测试web API,但我想查看Postman发送到web API的数据。我如何查看这个?

  • 我刚接触过Postman,我正试图找出如何最有效地为REST应用程序构建测试集合。我希望在每个测试脚本中都可以访问一堆实用函数,但是将它们剪切粘贴到每个测试脚本中似乎是一个糟糕的解决方案。 在查看Postman允许您松鼠数据的各种“作用域”(例如,全局、环境、集合)时,似乎所有这些都只是字符串/数字存储。换句话说,如果可以/确实将结果字符串化,它将正确地存储它们。但它实际上并不允许您存储适当的对象

  • 有人能帮助我如何使用以下参数发送POST请求吗: 我试着在《邮递员的身体》中发送一个带有以下参数的: 然而,在发送上述请求时,我得到的位置字符串为null。