Node.js 有没有一种好方法可以用“摩卡-w”打印每次跑步后的时间?

Node.js 有没有一种好方法可以用“摩卡-w”打印每次跑步后的时间?,node.js,mocha.js,Node.js,Mocha.js,我喜欢在我进行测试时让mocha-w在终端上运行,这样我就可以立即得到反馈,但我不能总是从一眼就知道状态没有改变时它是否改变了-它运行了,还是卡住了(发生了) 我希望有一种方法可以在每次测试运行结束时附加一个时间戳,但理想情况下,只有在“监视”模式下运行时,如果我手动运行它,当然我知道它是否运行 现在,我将在运行的最后一个测试中添加一个异步控制台日志: it('description', function () { // real test parts.should.test.things(

我喜欢在我进行测试时让
mocha-w
在终端上运行,这样我就可以立即得到反馈,但我不能总是从一眼就知道状态没有改变时它是否改变了-它运行了,还是卡住了(发生了)

我希望有一种方法可以在每次测试运行结束时附加一个时间戳,但理想情况下,只有在“监视”模式下运行时,如果我手动运行它,当然我知道它是否运行

现在,我将在运行的最后一个测试中添加一个异步控制台日志:

it('description', function () {
  // real test parts.should.test.things();
  // Trick - schedule the time to be printed to the log - so I can see when it was run last
  setTimeout(() => console.log(new Date().toDateString() + " @ " + new Date().toTimeString()), 5);
});
显然,这是丑陋和糟糕的,原因有几个:

  • 它是手动添加到最后一个测试中的-必须知道是哪一个
  • 每次运行测试时都会添加它,但不会添加其他文件-因此,如果我运行不同的文件或测试->无日志;如果我仅手动运行该测试->日志
  • 这只是对测试目的的一种冒犯——为了我的意愿而颠覆它
我看到一些关于mocha添加了一个
global.it
对象的引用,该对象带有命令行args,可以搜索“-w”标志,但这更难看,仍然不能解决大多数问题


是否有其他摩卡附加模块提供此功能?或者我忽略了选项中的某些内容?或者也许我真的不需要这个,而我一开始就做错了?

摩卡咖啡支持。如果在任何
descripe
块之外的
钩子(例如)之后放置
,则它应该在所有测试结束时运行。当然,它不会只在监视模式下运行,但在其他情况下应该适合使用。

是的,根级别的“after”更好地完成任务-无论运行哪个测试都有效(只要加载了它的文件)。谢谢