Ao testar meus aplicativos nodejs (ou navegador) com o mocha , às vezes sinto a necessidade de exibir os valores de entrada como título do caso de teste para explicar melhor o caso de teste. Obviamente não posso simplesmente fazer console.log
isso, pois vai quebrar a formatação do repórter. Ao hackear com ele, encontrei este truque com o qual podemos adicionar ao título programaticamente ou até mesmo alterar o título inteiramente, o último, entretanto, não é muito útil.
Portanto, a propriedade mágica é this._runnable.title
. Anexe qualquer string a ele e ele aparecerá como título no relatório de teste. Anexe a ele para preservar o título atual e adicione mais algum texto
Imagine um caso de teste simples escrito com mocha:
var assert = require('assert');
describe("My Test", function(){
it("should pass with input ", function(){
var input = "This will be appended at the end of the title";
this._runnable.title = this._runnable.title + input;
assert(typeof input === 'string');
});
});
E correr mocha /path/to/test/file/ --reporter spec
dá o seguinte relatório.
My Test
✓ should pass with input This will be appended at the end of the title
✔ 1 test complete (5ms)
Eu geralmente uso isso para anexar entradas que estou testando no final do título. Seria ótimo se o mocha suportasse esse recurso diretamente sem realmente tocar na _runnable
propriedade, uma vez que é privado e o usuário final não deve hackear com ele. De qualquer forma, bastante útil para esse caso de uso. Se você também apoiar a ideia, +1
este PR https://github.com/visionmedia/mocha/pull/918