Не удается отладить тесты с помощью Resharper - не удается запустить отладчик
Я не могу отлаживать свои тесты с помощью параметра Resharper-Debug в моем проекте. Я видел этот вопрос, поднятый множеством людей, но не нашел надежного предложения, которое решает мою проблему.
Странно то, что, если я создаю образец проекта и напишу простую unit test, я могу отлаживать его без каких-либо проблем. Однако, когда я пытаюсь сделать это в своем текущем проекте, он просто выдает диалоговое окно с сообщением "Не удается запустить отладчик". Я проверил это с моими сверстниками, и они не сталкиваются с этой проблемой: (
Кроме того, во время выполнения теста у меня нет никаких проблем.
Это машина XP и следующая версия resharper:
JetBrains ReSharper 5.1 С# Edition
Построить 5.1.1753.4 на 2010-10-15T15: 51: 30
Лицензировано: XXXXXXX
Плагины: нет.
Visual Studio 9.0.21022.8.
Copyright © 2003-2011 JetBrains s.r.o.. Все права защищены.
Спасибо,
-M
Ответы
Ответ 1
Я иногда сталкиваюсь с тестом, который не может быть запущен с помощью значка отладки Resharper (из-за макетных объектов или 32-разрядных 64-разрядных библиотек). Решение, которое работает для меня, - это добавить явный вызов для запуска отладчика в тесте
Debugger.Launch();
Затем просто запустите тест как обычно. Когда выполнение кода попадает в эту строку, вы получаете всплывающее окно безопасности (выберите да)
![alt text]()
тогда появится всплывающее окно с визуальной студией (выберите свою текущую визуальную студию).
![alt text]()
Вы будете отброшены в свой код в режиме отладки в том месте, где вы добавили строку Debugger.Launch().
Ответ 2
Возможно, кому-то здесь споткнулся, в частности, я столкнулся с ошибкой:
---------------------------
ReSharper – Unit Testing
---------------------------
Cannot launch debugger.
Error code: 89710016
Error message: 0
при использовании R # 8.2 на VS 2013 Pro при попытке отладить тесты NUnit.
После нахождения этой ссылки проблема устранена путем изменения проекта библиотеки классов NUnit на x86 (Properties -> Build -> Platform Target : x86
)