Я строю VS2010 решения на агенте сборки TFS2008 с установленным VS2010 Ultimate; код компилируется нормально, а тесты все работают нормально, но когда дело доходит до покрытия кода, ничего не сообщается. Я проверил, что в файле .testsettings включен Code Coverage, и что я выбрал некоторые сборки для инструмента, и если я буду запускать тесты локально на своем компьютере разработчика, охват кода анализируется и сообщается успешно.Недостаток кода при создании приложений .NET 4 в Team Build 2008
Однако, когда построено на сервере сборки, покрытие кода не сообщается. Я вижу файл data.coverage, расположенный в папке TestResults \ guid \ In \ MachineName сборки, поэтому это явно что-то сделано, но журналы сборки не содержат упоминаний о том, что делать с охватом кода, и никаких предупреждений/ошибок.
Update: проверка на самом сервере TFS, журнал приложений содержит следующую ошибку:
Анализ Service Code Coverage не может анализировать данные покрытия кода для сборки Daily Build> 20100812,2 (Любой процессор/ОТЛАЖИВАТЬ). Это часто вызвано публикацией различных версий одного и того же двоичного файла для конкретной сборки. Обработка данных покрытия кода из запуска svcTFSService @ W2411193 2010-08-12 12: 52: 34_Any CPU_Debug вызвало следующее исключение: Ошибка при создании информации о покрытии: Ошибка загрузки файла символа. Символы и двоичные файлы должны быть в той же папке, что и файл покрытия или путь к символу: D: \ Source \ CommonPlatform \ Common Platform Development Daily Build \ Binaries \ Debug \ Core.dll.
Однако, когда я смотрю на агента сборки в указанной папке, как сборка, так и ее файл символов отладки находятся в ожидаемом месте.
Update 2: По прихоти, я попытался открыть файл data.coverage, что я уже упоминал выше, в VS 2010 на агента построения, и я получаю следующее сообщение об ошибке:
Покрытие кода Анализ двигателя кинул exception (s): Файл изображения «D: \ Source \ CommonPlatform \ Common Platform Development Daily Build \ Binaries \ Debug \ Core.dll» не найден.
Однако я могу явно видеть файл, находящийся в файловой системе, а также его PDB.
Временные метки соответствуют второму :-( –
hmmm. Я думаю, это был длинный выстрел. Извините. – Robaticus