Какие инструменты вы бы порекомендовали для настройки CI для создания и развертывания нескольких веб-сайтов на DotNetNuke с использованием SVN для контроля версий?
В настоящее время мы рассматриваем настройку круиз-контроля для работы с NAnt, NUnit, NCover и Trac в качестве тестового примера. Какие еще комбинации стоит изучить?
Мы полностью контролируем нашу среду разработки, поэтому использование определенной формы КИ здесь обязательно, но я также хотел бы убедить нашу команду производственных служб в том, что они могут надежно развернуть систему в тестовой, операционной и даже производственной средах с помощью этих инструментов.
Мы используем CruiseControl с NUnit, NCover, FxCop, SVN и некоторыми специальными инструментами, которые мы написали сами для создания отчетов. По моему мнению, это (за последние несколько лет) оказалось отличной комбинацией.
Обидно, что MS ограничивает все свои инструменты интеграции VSTS. Его тестовая среда так же хороша, как NUnit, но вы не можете использовать его инструменты покрытия кода или что-то еще.
Я бы посмотрел XNuit - он выглядит довольно многообещающе (но в настоящее время ему не хватает пользовательского интерфейса).
Мы автоматизируем ночные сборки, и вы можете автоматизировать UAT и тестовые сборки вручную, но я не уверен, что мы когда-нибудь захотим автоматизировать выпуск на наших производственных серверах. Даже если бы это было какое-то изменение, было бы достаточно важно, чтобы кто-то все равно следил за ним.
Я хотел бы взглянуть на Team City http://www.jetbrains.com/teamcity/index.html Я знаю некоторых людей, которые смотрят на это, и они говорят хорошие вещи об этом.
Процесс сборки моей компании выполняется в FinalBuilder, поэтому я скоро посмотрю на их сервер.
CC хорош тем, что вы можете настроить один сервер CC на мониторинг другого сервера CC, чтобы вы могли настроить такие вещи, как - когда сборка завершится на вашем сервере сборки, ваш тестовый сервер проснется, загрузит виртуальную машину и развернет ваше приложение. Вроде того.
Microsoft ослабила ограничения на платформу тестирования, включив ее в Visual Studio 2008 Professional и разрешив запуск тестов из командной строки с установленной платформой 3.5. Недавно мы сделали кроссовер для клиента, и до сих пор он был в состоянии выполнить все тесты без необходимости использования NUnit.
Мы используем CruiseControl.NET, выполняющий сценарии msbuild. Msbuild отвечает за обновление из SVN при каждом коммите, компиляции и запуске FxCop и NCover / NUnit.
Посмотрите на Гудзона . Это очень настраиваемый, и, IMHO, проще, чем CruiseControl.
Я бы порекомендовал вам взглянуть на NAnt + NUnit (+ NCover) + TeamCity с SVN для вашей системы сборки. На самом деле есть очень хорошая статья, описывающая эту конфигурацию в книге идей Пита В. (Извините, эта ссылка больше не существует!)