В настоящее время у меня есть решение для ряда проектов, которые включают модульные тесты. У нас есть CI-сборка и отдельная Scheduled build, и я хотел бы иметь возможность запускать Code Coverage на последней (а не на CI).
В настоящий момент мы используем Visual Studio 2010 и TFS 2008. Ничего из этого нельзя изменить. Я часами осматривался, и во многих предложениях упоминается вкладка «Процесс», которую можно выбрать в определении сборки, однако дальнейшее исследование показывает, что имеющаяся у нас комбинация VS / TFS не имеет этой опции.
Другой источник сообщает, что нужно изменить некоторые настройки тестирования, чтобы они содержали параметр «Покрытие кода» (что я сделал), а затем определил файл настроек теста в сборке, но я понятия не имею, как это сделать (http://www.codewrecks.com/blog/index.php/2010/06/14/running-code-coverage-in-tfs2010-builds/).
У меня есть конфигурация testsettings, которая будет запускать покрытие кода локально, поэтому моя проблема в том, что мне нужен файл MSBuild TFSBuild.proj, чтобы знать, какой файл testsettings использовать при запуске тестов (с помощью параметра <RunTest>true</RunTest>
).
Любая помощь по этому вопросу будет принята с благодарностью. Я изучил различные другие предлагаемые решения, но, похоже, ни одно из них не соответствует этому. Они либо используют лучшую версию TFS, либо делают что-то еще.
РЕДАКТИРОВАТЬ. Я подозреваю, что я могу быть ограничен использованием задачи Exec
в сценарии сборки и запуском команды Vsperfmon.exe
с некоторыми аргументами. Если это так, пожалуйста, приведите пример, потому что я не знаю, как записать результаты этой команды и привязать их к моей запланированной сборке.
Спасибо всем.