Silenciar saída do console JavaScript

Isso é muito útil para testes de unidade com 100% de cobertura de código, enquanto mantém uma saída de teste limpa no console!

Primeiro, você precisa de um código de configuração básico:

// Backup console.log so we can restore it later
var ___log = console.log;
/**
* Silences console.log

* Undo this effect by calling unmute().

*/

function mute() {
console
.log = function(){};
}
/**
* Un-silences console.log

*/

function unmute() {
console
.log = ___log;
}

Então, você pode escrever o código usando mute()e unmute()assim:

mute();
MyClass.functionThatPrintsOutput();
unmute
();