Postman 如何多次运行单个端点?

Postman 如何多次运行单个端点?,postman,Postman,我有一个集合,它有三个端点。第一个创建一个资产,第二个向资产添加一个文件,第三个列出所有资产 如何在运行程序的每次迭代中多次运行第二个,即向资产添加文件的那个 我希望测试创建一个资产,并为每个迭代向其中添加多个文件 有什么建议吗?我知道我可以复制端点,但我想知道是否有一种编程方式可以做到这一点。到目前为止,还没有一种直接的解决方案使用Postman为文件夹/集合中的同一请求配置多个点击 不过,您可以在第节中编写一些代码,方法是添加一个计数器,其中包含您想要的点击数,并在当前请求中调用postma

我有一个集合,它有三个端点。第一个创建一个资产,第二个向资产添加一个文件,第三个列出所有资产

如何在运行程序的每次迭代中多次运行第二个,即向资产添加文件的那个

我希望测试创建一个资产,并为每个迭代向其中添加多个文件


有什么建议吗?我知道我可以复制端点,但我想知道是否有一种编程方式可以做到这一点。

到目前为止,还没有一种直接的解决方案使用Postman为文件夹/集合中的同一请求配置多个点击

不过,您可以在第节中编写一些代码,方法是添加一个计数器,其中包含您想要的点击数,并在当前请求中调用
postman.setNextRequest(“request_name”)
方法(从中阅读更多信息)

在Postman应用程序范围之外,您可以导出您的收藏(作为JSON文件),并使用
newman
编写一些javascript代码,这是Postman的命令行配套实用程序(更多关于newman的信息来自),它获得了一个
run
方法,其中包含大量迭代计数和数据选项,可以帮助您(例如,将第二个请求放在文件夹中并对其进行迭代)

希望有帮助

  • 创建2个环境变量:

    • “计数器”(希望请求运行的次数)
    • “RequestNumber”=1(用于跟踪当前请求编号)
  • 将此代码添加到要多次运行的请求的测试部分:

    const counter = pm.environment.get("Counter");
    const requestNumber = pm.environment.get("RequestNumber") || 1;
    if (requestNumber < counter) {
        postman.setNextRequest("RequestName");
        requestNumber ++;
        pm.environment.set("RequestNumber", requestNumber);
    }
    else {
        pm.environment.set("RequestNumber", 1);
    }
    
    const counter=pm.environment.get(“计数器”);
    const requestNumber=pm.environment.get(“requestNumber”)| 1;
    if(请求编号<计数器){
    邮递员。setNextRequest(“请求名称”);
    requestNumber++;
    pm.environment.set(“RequestNumber”,RequestNumber);
    }
    否则{
    pm.environment.set(“RequestNumber”,1);
    }
    

  • 与其使用
    postman.setNextRequest()
    ,不如使用
    pm.sendRequest()

    在测试脚本或请求前脚本中,您可以创建一个请求对象,该对象将描述您要发送的请求(URL、HTTP方法、头体等),并将其放入
    pm.sendRequest()
    函数中

    考虑:

    const requestObject = {
        url: 'https://postman-echo.com/post',
        method: 'POST',
        header: 'headername1:value1',
        body: {
            mode: 'raw',
            raw: JSON.stringify({ key: "this is json" })
        }
    }
    
    pm.sendRequest(requestObject, (err, res) => {
        console.log(res);
    });
    
    for(let iteration = 0; iteration < 5; iteration++) {
      pm.sendRequest(requestObject, (err, res) => {
          console.log(res);
      });
    }
    
    要多次运行同一请求,只需将函数放入forEach的/
    循环中的
    /
    for

    考虑:

    const requestObject = {
        url: 'https://postman-echo.com/post',
        method: 'POST',
        header: 'headername1:value1',
        body: {
            mode: 'raw',
            raw: JSON.stringify({ key: "this is json" })
        }
    }
    
    pm.sendRequest(requestObject, (err, res) => {
        console.log(res);
    });
    
    for(let iteration = 0; iteration < 5; iteration++) {
      pm.sendRequest(requestObject, (err, res) => {
          console.log(res);
      });
    }
    
    for(让迭代=0;迭代<5;迭代++){
    pm.sendRequest(requestObject,(err,res)=>{
    控制台日志(res);
    });
    }
    
    如果需要,可以在循环中修改
    requestObject


    查看以了解更多详细信息。

    查看此链接,它具有一些可移植的功能。否则,如果您只是使用postman,您可能只能在测试运行Json中多次复制和粘贴请求。我想您的意思是使用while循环而不是if语句