如何在newman中设置setTimeout/Thread.sleep

How to set setTimeout/Thread.sleep in newman

如何设置setTimeout/Thread.sleep in newman(postman的node模块).

我正在使用以下功能:

setTimeout(function(){ 

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

以上功能在postman的collection runner中完美运行

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

'setTimeout is not available inside sandbox and has no side-effect.'

我找到了类似下面的帖子:

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

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

有什么方法可以让我的单曲API延迟一段时间

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

任何解决方案都会有帮助

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


明确地说,您将使用 newman 一种不适合的方式。


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

function sleep(milisecond) {
  const date = Date.now();

  // Sleep in an *infinite* loop
  while ((date + milisecond) > Date.now());
}

更新 newman 到 3.8.3 或更高版本。

newman旧版本不支持setTimeout