Имеется тестовый проект с тестовыми классами и методами [TestMethod] с довольно сложной многоступенчатой структурой. Сделано на MS Test Framework.
Это не юнит-тесты, а отдельные автоматизированные модульные кейсы, которые самостоятельно запускаются потом TestAgent-ом на TestController-е.
Пока я запускаю свои тесты из студии, все отлично — я могу в TestResult посмотреть свои Debug.Writeline-ы, оценить, где и как тест упал (или же как он проходил).
Но далее задача следующая: из методов собираемого на билд-сервере моего тестового проекта я создаю в TFS тект-кейсы (Team — New — Test case, associated automation — тест методы из моих классов).
Затем созданные TestCase привязываются к тому или иному TestSuite, добавляются в TestPlan.
Далее тестеровщики уже не используя студию запускают собвтенно MS TestManager — Test lab, выбирают мой Suite и запускают на нужном контроллере с нужным enviroment-ом эти самые кейсы.
Если кейс выполнился, все хорошо. Но если упал на каком-нибудь assert-е, тестеровщик видит только сообщение этого самого ассерта, не знаю, что до этого происходило, и не имея возможности выяснить подробно, почему тест упал.
Собственно вопрос, как бы в TestResult, доступный при запуске кейсов из менеджера присобачить свои логи прохождения теста?
У меня там каждый шаг комментируется и выводятся полученные на каждом шаге данные. Сейчас приходится по каждому Failed тесту мне запускать его локально из студии, натравливать на нужный контроллер и смотреть в дебаге, что происходило.
Я пробовал разные Debug, Trace, Console, пробовал копать в сторону TestContext, но все равно — при запуске из студии все отлично видно, а при запуске из ТМ — только строчка "упало" и сообщение соответствующего assert-а