我如何使用console.log来调试测试?
我正在使用JavaScript测试运行“Mocha”。
我有一个失败的测试,所以我会使用console.log
进行调试。
但是当测试运行时,没有输出(仅来自Mocha的测试结果)。 摩卡似乎已经捕获并压制了我的console.log
输出!
我怎样才能让摩卡显示我的输出? (在测试失败)?
编辑:
巨大的歉意! - console.log
在测试过程中不起作用! 我一定会期待它压制输出,而我没有正确地检查自己的代码。 感谢您的回应。 所以...说的是...也许它实际上会很好地抑制通过测试的输出? 嗯...
在相关说明中:我想使用console.log
因为尝试让Eclipse调试器连接到node.js时遇到了很多麻烦。
我是唯一一个发现这个棘手问题的人吗? 你们如何调试node.js? 用调试器,还是用console.log
语句?
你正在使用哪些摩卡选项?
也许这与记者(-R)或ui(-ui)被使用有关?
console.log(msg);
在我的测试运行过程中工作正常,虽然有时混合在一个有点愚蠢。 可能是由于测试运行的异步性质。
以下是我正在使用的选项(mocha.opts):
--require should
-R spec
--ui bdd
嗯..只测试没有任何mocha.opts和console.log
仍然有效。
如果您正在测试异步代码,则需要确保将done()
放在该异步代码的回调中。 测试http请求到REST API时,我遇到了这个问题。
你可能也会把你的console.log
放在一个失败的预期之后,因此你的日志行不会被执行。