Как пропустить юнит-тест?

Интересно, как пометить конкретный тест в eunit таким образом, чтобы он был проигнорирован (т.е. скомпилирован, но не выполнен) при следующем запуске теста. Я задаю этот вопрос в контексте TDD, т.е. я хотел бы провести рефакторинг в зеленом, но у меня все еще есть несколько тестовых случаев, к которым я вернусь позже.

Я бы предпочел не комментировать тест, это хороший способ забыть о нем. В сводной строке теста eunit есть пропущенная строка, но я не смог найти никаких документов об этой функциональности.


person jupp0r    schedule 06.02.2012    source источник
comment
«Пропущенная строка» означает, что тест не был выполнен из-за сбоя установки.   -  person Isac    schedule 06.02.2012


Ответы (1)


Вы можете временно убрать суффикс _test из имени теста (или добавить любой другой, например, _ignore). Он будет скомпилирован, но не будет отображаться в сводке (поскольку он будет рассматриваться как обычная функция и, следовательно, будет проигнорирован eunit).

Это конечно обходной путь, eunit должен поддерживать такую ​​функциональность, но боюсь, что нет.


Понятие «пропущено» в EUnit означает, что что-то помешало запуску теста, например, сбой компиляции, сбой узла, ответственного за сбой теста, или сбой установки.

Эта концепция довольно глубоко встроена в код, поэтому нет простого способа получить пропущенные пользователем тесты.

person Wacław Borowiec    schedule 09.02.2012
comment
Хорошо, спасибо за информацию. Я просмотрел eunit.hrl и это на удивление просто. Возможно, я начну внедрять эту функцию. - person jupp0r; 09.02.2012