Отладчик VS 2010 не загружает символы при подключении к NUnit

(Я только что разместил это в группе обсуждения NUnit на groups.google.com)

В VS 2008, я буду запускать свои тесты под NUnit, и, если мне нужно debug, я бы подключил отладчик VS2008 к запущенному процессу Nunit (Debug → Attach to Process) и установить любые точки останова по коду, который мне нужен изучить. Когда я ударил Run buttion в NUnit, он ударил бы точки останова. (Кстати, если это имеет значение, на этом работает NUnit 2.5.2).

Я только что обновился до NUnit 2.5.4 и VS 2010. Когда я установил точку останова, затем присоедините к NUnit, я получу маленький предупреждающий символ в точке останова точка и зависание над ней дает всплывающую подсказку "Точка останова не будет удар. В настоящее время не загружаются никакие символы ". Переход к окну Debug → Windows → Modules показывает целую кучу модулей Windows и NUnit загружен, с символьным статусом "Пропущенные символы загрузки", а затем 1 модуль со смешным именем, которое меняется каждый раз (r1euhmh5 right now) и Symbol Status "Без символов загружен". (Нет следа модуля с именем удаленно, как моя тестируемая DLL).

Щелкните правой кнопкой мыши смешное имя файла (предполагая, что это отображение с моего DLL) и нажмите "Загрузить символы из → " Путь к символу "и перейдя в папку bin\debug, а затем щелкнув файл pdb моего DLL под тестированием, я получаю сообщение "Соответствующий символ не найден в этой папке ". (В верхней части диалогового окна" Открыть "есть строка, в которой говорится" Исходное местоположение: r1euhmh5.pdb")

Так что изменилось? И как мне заняться отладкой/перехватом под VS 2010/NUnit 2.5.4 (или это возможно, я что-то прикрутил когда я решил пройти через VS2010 и установить некоторые из них более продвинутые уровни, чем я знал, что я делаю?)

Я ценю любую помощь.

Ответ 1

Я не уверен, что я точно понимаю, почему, но ответ заключается в том, чтобы прикрепить отладчик к nunit-agent.exe вместо nunit.exe. См. Ответ Charlie Poole здесь

Ответ 2

Информация об этом блоге о том, как сообщить NUnit использовать правильную инфраструктуру .Net в файле конфигурации nunit.exe.

Преимущество этого в файле конфигурации состоит в том, что он позволяет вам настроить проект unit test, чтобы вы могли запускать NUnit в качестве внешней команды при выборе Debug → Start New Instance.