有没有一种好方法可以在每个 运行 之后用 `mocha -w` 打印时间?

Is there a good way to print the time after each run with `mocha -w`?

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

我想有一种方法可以在每个测试 运行 的末尾附加时间戳,但理想情况下仅当 运行 处于 'watch' 模式时 - 如果我运行手动设置,我当然知道是不是运行。

现在,我将异步控制台日志附加到 运行s:

的最后一个测试
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 对象的引用,可以在其中搜索 '-w' 标志,但这更丑陋,仍然没有解决大多数问题。

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

Mocha 支持 root level hooks。如果你在任何 describe 块之外放置一个 after 钩子(例如),它应该 运行 在所有测试结束时。当然,它不会 运行 仅在手表模式下,但在其他情况下应该适用。