Я искал в сети нестандартную задачу MSBuild NUnit, которая запускалась бы при каждой сборке, а также прекрасно играла с Visual Studio UI (2008 - моя версия). Я нашел проект MSBuild.Community.Tasks, который был великолепен, но потерпел неудачу в части интеграции с Visual Studio.
Что я на самом деле хотел получить, так это чтобы тесты с ошибками отображались в виде предупреждений / ошибок в окне списка ошибок VS (а также при сбое сборки проекта, когда тесты не увенчались успехом). Поэтому я написал свою собственную задачу MSBuild, которая выполняет работу именно так, как я хотел.
НО.
Единственная проблема, с которой я сталкиваюсь, заключается в том, что обычное поведение списка ошибок VS UI состоит в том, что при нажатии на ошибку он переходит на соответствующий исходный файл и выделяет проблемный код. Мне удалось связать номер файла и строки с неудачным тестом, однако я не смог никоим образом убедить Visual Studio в том, что я выделил проблемный код для HIGHLIGHT (когда я дважды щелкнул по ошибке). Все, что я получаю, это курсор в нужном месте.
Я перепробовал все виды комбинаций line
, endLine
, column
, endColumn
параметров метода (Log.LogError()
), но безрезультатно. И, основываясь на выводе ошибок ошибками компилятора, похоже, что он также предоставляет только строку и столбец (без конечных значений).
Кто-нибудь сталкивался с этой странностью и разрешал ее?
Обновление от 13 мая 2009 г.
Вы можете получить этот проект бесплатно (без выбора метода) на
http://code.google.com/p/nunitmsbuildvsintegrated/