Лучшая практика с развертыванием Coldfusion - PullRequest
5 голосов
/ 05 июня 2011

Я новичок в разработке Coldfusion и унаследовал уже развернутый проект. Из-за различных технических ограничений локальная разработка на наших рабочих станциях невозможна (как это было бы для .net). Как следствие, файлы редактируются непосредственно с тестовых серверов (и передаются в SVN оттуда).

Еще раз, поскольку тестовая база данных обычно намного отстает от базы данных prod, нам часто приходится редактировать код непосредственно с сервера prod (пожалуйста, не вините здесь, я знаю, что это плохо).

Я хотел бы воспользоваться этой возможностью, чтобы вернуть процесс в нечто управляемое:

  • Местная редакция кода
  • Модульное тестирование с использованием MXUnit
  • Фиксация с SVN
  • Подключите SVN для развертывания на тестовом сервере
  • Тест на тестовом сервере
  • Как-то инициировать развертывание на серверах prod

С точки зрения технологии, я думал о комбинации: CFEclipse, MXUnit, SVN и ANT

Кроме SVN, все будет новым и может быть изменено, если у вас есть лучший совет.

Кто-нибудь реализовывал такие процессы и мог бы мне подсказать, с чего начать?

Ответы [ 2 ]

5 голосов
/ 06 июня 2011

В нашем офисе мы сначала попробовали ANT + MXUnit + Selenium + TeamCity, но через некоторое время мы решили перейти на сервер непрерывной интеграции Jenkins / Hudson.

Существует множество инструкций и руководств по непрерывной интеграции.так что я думаю, что вам не нужно, чтобы я объяснил это подробно.

В общем, создайте свои ANT-скрипты для svncheckin / checkout, создайте тесты MXUnit, сгенерируйте / запишите тесты Selenium и запустите все от пользователя Jenkinsинтерфейс на тестовом сервере.

Быстрые подсказки: разрабатывайте сценарии ANT локально, чтобы избежать удаления файлов на сервере (случалось с нами однажды :)).MXUnit сложен, когда дело доходит до запуска его из браузера, обратите внимание на переменные области приложения.Вы можете писать / редактировать тесты Selenium на многих языках, в нашем случае Java казался лучшим выбором.И у TeamCity, и у Дженкинса есть свои плюсы и минусы, лучше попробуйте оба и посмотрите, что подходит вам больше.

Ссылки по теме:

http://www.jetbrains.com/teamcity/

http://jenkins-ci.org/

http://seleniumhq.org/

Вы также можете взглянуть на BDD (разработку, управляемую поведением) и включить JBehave http://jbehave.org/ в рабочий процесс гибкой разработки.Круто, если у вас "сложные" клиенты.

Удачи!

0 голосов
/ 06 июня 2011

Смотрите в git вместо svn. Намного лучше. И Mylyn / Tasktop, чтобы связать все вместе в вашем идеале.

...