Отладка тестов Visual Studio 2010 с использованием nunit-console и VS-macro - PullRequest
3 голосов
/ 22 августа 2011

Я пытаюсь отладить тесты из Visual Studio с помощью nunit-console с помощью VS-макроса, но у меня возникают проблемы при подключении отладчика / IDE к nunit-console / nunit-agent.У меня действительно работает макрос, если я просто хочу запустить тест, проблема заключается только в подключении отладчика.

Кажется, что-то вроде тупиковой проблемы.Когда я запускаю свой макрос, он замораживает IDE.После присоединения тест приостанавливается в точке останова (я думаю), но я не вижу этого, поскольку среда IDE заморожена.Я не могу выполнить пошаговое руководство и т. Д., Поскольку макрос блокирует среду IDE, и я не могу продолжить тест, поскольку он остановлен в точке останова.Любые идеи?

Я не могу использовать resharper / testdriven / extensions и т. Д., Никаких сторонних, не спрашивайте :(, так что это макрос, что-то вроде этого или ничего.7, VS 2010, .net 4 проекта.

Что у меня есть до сих пор

process.Start() 'run nunit-console

If attachDebugger then
 For Each debugProcess As EnvDTE.Process In DTE.Debugger.LocalProcesses

   ' no parent process ID on process type, so have to look at name for the agent.
   If debugProcess.ProcessID = process.Id Or debugProcess.Name.Contains("nunit-agent") Then
     debugProcess.Attach()
   End If

 Next
End If    

process.WaitForExit()

DTE.Debugger.DetachAll()

1 Ответ

1 голос
/ 22 марта 2012

Это всего лишь предположение, но я подозреваю, что Visual Studio выполняет макрос в своем одиноком потоке пользовательского интерфейса.

Возможно, вы могли бы попробовать это:

В вашем макросе раскрутите другой поток и запустите код, который вы написали в нем. Позвольте макросу выйти немедленно.

...