Я настраиваю систему CI для настольного проекта VS2008 / C #, ничего особенного, просто цикл сборки / тестирования. CI будет работать под Hudson, используя MSBuild / MSTest, но я не могу решить, как сделать несколько вещей, может, вы мне поможете?
Мои параметры для запуска проекта в CI:
- Запустите .sln напрямую из MSBuild
- Запустите .csproj напрямую из MSBuild
- Создайте отдельный проект MSBuild, ссылаясь на .sln или .csproj как задачу MSBuild
- Создайте отдельный проект MSBuild, импортирующий некоторые вещи (группы свойств или группы элементов)
из .csproj
Если бы мне не нужно было запускать тесты, я бы, скорее всего, просто использовал 1-й вариант (запустите .sln с MSBuild). Но мне нужно добавить задачу для запуска тестов, поэтому я не могу решить, следует ли мне добавить задачу / цель к .csproj или сделать это в отдельном проекте. Единственное, чего я хочу достичь, - это когда я изменяю свой .sln или один из .csproj, в идеале мне не нужно прикасаться к чему-то другому, чтобы иметь возможность продолжать работу в CI.
Другой вопрос касается запуска MSTest - достаточно ли задачи Exec или я должен написать / использовать какую-то задачу MSTest (кажется, не могу найти ее в .Net)