Estoy usando el programa de ejecución de pruebas de JavaScript "Mocha".
Tengo una prueba que está fallando, por lo que debería depurarla usando console.log
.
Pero cuando se ejecutan las pruebas, no hay salida (solo los resultados de la prueba de Mocha). ¡Parece que Mocha ha capturado y suprimido mi console.log
salida!
¿Cómo puedo hacer que Mocha muestre mi salida? (en para las pruebas que fallan)?
EDITAR:
¡Grandes disculpas! - ¡ console.log
Funciona durante las pruebas! Debo haber estado esperando que suprimiera la salida y no verifiqué correctamente mi propio código. Gracias por responder. Entonces ... dicho eso ... ¿tal vez sería bueno suprimir la salida para las pruebas que pasan? mmm ...
En una nota relacionada: quiero usar console.log
porque tengo muchos problemas al intentar que el depurador de Eclipse se conecte a node.js.
¿Soy el único que encuentra esto complicado? ¿Cómo depuran node.js? ¿Con un depurador o con console.log
declaraciones?
fuente
Respuestas:
¿Qué opciones de Mocha estás usando?
¿Quizás tenga algo que ver con el uso de reporter (-R) o ui (-ui)?
funciona bien durante mis ejecuciones de prueba, aunque a veces mezclado en un poco tonto. Presumiblemente debido a la naturaleza asincrónica de la ejecución de prueba.
Aquí están las opciones (mocha.opts) que estoy usando:
Hmm ... acabo de probar sin mocha.opts y
console.log
todavía funciona.fuente
Si está probando código asincrónico, debe asegurarse de colocar
done()
la devolución de llamada de ese código asincrónico. Tuve ese problema al probar solicitudes http a una API REST.fuente
Es posible que también haya puesto su
console.log
después de una expectativa que falla y no se detecta, por lo que su línea de registro nunca se ejecuta.fuente
Utilice la depuración lib.
Úselo:
entonces corre:
¡Y eso es!
fuente