2014-09-08 3 views
1

Как показать полную трассировку стека, когда nodeunit ловит ошибки? Например, мой тест бросает:Как показать полную трассировку стека в Nodeunit?

✔ event delete - basic 
✔ delete - errors 
Fatal error: undefined is not a function 

Как получить nodeunit сказать мне, где undefined вызывается как функция?

+0

Не могли бы вы включить некоторые из вашего тестового кода? Документы ничего не говорят о том, что nodeunit скрывает трассировки стека. –

ответ

1

Проблема с grunt-contrib-nodeunit: она изменяет исходные сообщения nodeunit на что-то менее полезное. Я создал проблему here.

Короче говоря, код, который я произвел такой вывод с хрюкать-вно-nodeunit:

[email protected]:~/bug_test$ grunt 
Running "nodeunit:all" (nodeunit) task 

test.js 
Fatal error: undefined is not a function 

Plain nodeunit дает более полезное сообщение об ошибке:

[email protected]:~/bug_test$ nodeunit test.js 

test.js 

FAILURES: Undone tests (or their setups/teardowns): 
- testSomethingElse 

To fix this, make sure all tests call test.done() 

И, как показано на рисунке в этом случае, когда есть стек для совместного использования grunt-contrib-nodeunit, он иногда скрывает его.

Обратите внимание, что выбор репортера (хрюк, по умолчанию или минимальный) не повлиял.

Решение заключается в том, чтобы всегда запускать тесты с помощью nodeunit непосредственно, когда вы получаете менее полезное сообщение об ошибке. Там может быть новая информация.

Смежные вопросы