Я использую средство запуска тестов javascript "Mocha".
У меня есть тест, который не работает, поэтому я хотел бы отладить его, используя console.log
.
Но при запуске тестов нет вывода (только результаты тестов от Mocha). Кажется, что Mocha захватил и подавил мой console.log
вывод!
Как я могу заставить Mocha показать мой результат? (в случае неудачных тестов)?
РЕДАКТИРОВАТЬ:
Огромные извинения! - console.log
работает во время тестов! Я, должно быть, ожидал, что он подавит вывод, и я не проверил должным образом свой собственный код. Спасибо за ответ. Итак ... как говорится ... может быть, действительно было бы неплохо подавить вывод для тестов, которые проходят? хм ...
По соответствующему примечанию: я хочу использовать, console.log
потому что у меня много проблем с попыткой заставить отладчик Eclipse подключиться к node.js.
Я единственный, кому это сложно? Как вы, ребята, отлаживаете node.js? С отладчиком или с console.log
операторами?
источник
Ответы:
Какие варианты мокко вы используете?
Может быть, это как-то связано с использованием репортера (-R) или ui (-ui)?
отлично работает во время моих тестовых прогонов, хотя иногда немного смешно. Предположительно из-за асинхронного характера тестового прогона.
Вот варианты (mocha.opts), которые я использую:
Хм .. только что протестировал без всяких мокко.оптов и
console.log
все еще работает.источник
Если вы тестируете асинхронный код, вам необходимо обязательно
done()
включить обратный вызов этого асинхронного кода. У меня возникла эта проблема при тестировании HTTP-запросов к REST API.источник
Возможно, вы также поместили свой результат
console.log
после ожидания, которое не выполняется и не перехвачено, поэтому ваша строка журнала никогда не выполняется.источник
Используйте отладочную библиотеку.
Используй это:
затем запустите:
И это все!
источник