Как отлаживать сбои юнит-тестов в Visual C # 2008? - PullRequest
1 голос
/ 01 ноября 2009

Это почти мой первый опыт модульного тестирования.

Я добавил unittest к своему решению и выбрал Test-> Run-> All Tests in Solution . Мой тест не прошел из-за исключения, которое было добавлено в тестируемый код.

Обычно я бы тогда пошел в окно инструментов трассировки стека, пролистал его, посмотрел на значения локальных элементов в каждом фрейме стека и выяснил, что пошло не так. Но когда код завершается с ошибкой в течение юнит-теста , , я не получаю обычное уведомление об исключении "желтый шар" и Я не могу исследовать трассировку стека в деталях. Все, что я получаю, это вкладка «TestMethod1 [Results]», которая отображает только сообщение об исключении и трассировку стека в виде простого текста . Таким образом, нет доступа к значениям локальных объектов, нет доступа к выводу отладки, который я мог вывести на консоль ...

Как мне отладить его тогда?

Ответы [ 3 ]

2 голосов
/ 01 ноября 2009

Вам нужно выбрать «Тест-> Отладка-> Все тесты в решении», после чего отладчик работает как обычно. Все обычные окна отладки доступны, перейдя в «Debug-> Windows».

0 голосов
/ 01 ноября 2009

Вы можете установить TestDriven.NET , который является надстройкой Visual Studio, которая позволяет вам делать это - отлаживать свои тесты. Существует бесплатная версия сообщества.

0 голосов
/ 01 ноября 2009

Вы можете поставить точку останова в своем коде, например так:

<TestMethod> _
Public Sub Test()   <--- Put breakpoint here.

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

...