【问题标题】:How to set setTimeout/Thread.sleep in newman如何在 newman 中设置 setTimeout/Thread.sleep
【发布时间】:2018-05-15 12:34:02
【问题描述】:

如何在newman(postman的节点模块)中设置setTimeout/Thread.sleep。

我正在使用以下功能:

setTimeout(function(){ 

        console.log('sleep for ten min');
    }, 600000);

以上功能在邮递员的收集运行器中完美运行。

但是当我尝试 newman 时,它会抛出错误

'setTimeout 在沙箱中不可用,没有副作用。'

我发现了一个类似的帖子,如下所示:

https://github.com/postmanlabs/newman/issues/304

但他们也没有提供任何解决方案。

无论如何我可以将我的单个 API 标记为延迟一段时间。

我已经在使用 Newman 参数 --delay-request 60000,它在 API 之间有延迟,所以它不起作用。

任何解决方案都会有所帮助

【问题讨论】:

    标签: postman node-modules newman


    【解决方案1】:

    所以打开你给我们的link他们说:


    所以要明确一点,您将使用newman 一种并非设计用于的方式。


    话虽如此,您可以尝试实现自定义睡眠:

    function sleep(milisecond) {
      const date = Date.now();
    
      // Sleep in an *infinite* loop
      while ((date + milisecond) > Date.now());
    }
    

    【讨论】:

    • 谢谢@Gregory .. 我也尝试过.. 我找到了解决方案.. 测试它.. 将发布一次确认.. 投票给你寻求帮助;)
    【解决方案2】:

    将 newman 更新到 3.8.3 或更高版本。

    老版本的newman不支持setTimeout

    【讨论】:

    • 很好,你找到了 :) 也许其他人也会遇到同样的麻烦
    猜你喜欢
    • 2023-02-22
    • 1970-01-01
    • 1970-01-01
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-11
    相关资源
    最近更新 更多