mocha:从成功的测试中隐藏console.log输出 [英] Mocha: Hide console.log output from successful tests
本文介绍了mocha:从成功的测试中隐藏console.log输出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的问题
我正在使用Mocha为Node.js应用程序编写一个测试套件。我正在测试的函数将它们的日志直接写入console.log
,而不需要任何第三方日志记录解决方案。
我不关心来自成功测试的日志,只关心来自失败测试的日志,而且由于我的函数非常冗长,所以测试输出不必要地长。
我尝试了什么
- SFTW.找到此(Suppress console log of successful mocha tests),但它引用了Winston日志。
我的问题
如何抑制通过/成功Mocha测试的console.log
输出?
推荐答案
您可以修改console.log
函数以将其参数记录到变量中:
const originalLogFunction = console.log;
let output;
beforeEach(function(done) {
output = '';
console.log = (msg) => {
output += msg + '
';
};
});
afterEach(function() {
console.log = originalLogFunction; // undo dummy log function
if (this.currentTest.state === 'failed') {
console.log(output);
}
});
在提供多个参数或对象的情况下,可能需要修改虚拟日志函数。这是一个简化的示例。
这篇关于mocha:从成功的测试中隐藏console.log输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文