Перед началом
Узнайте, чего можно ожидать от этого пособия и как получить от него максимальную отдачу.
В этом учебном руководстве обсуждаются основные аспекты непрерывной интеграции: что это такое, почему она нужна, как она работает, каков темп разработки в среде с непрерывной интеграцией. В нем показывается, как построить процесс непрерывной интеграции, обеспечивающий повторяемый и надежный процесс сборки.
Будет рассказано, как правильно сконфигурировать CI-сервер, чтобы он следил за репозитарием системы управления версиями и запускал в Ant процесс сборки всякий раз, когда в исходном тексте обнаружится изменение. Будет также рассказано, как запускать автоматизированные Junit-тесты и как оптимально использовать PMD и FindBugs для проверки программного обеспечения. В конце читатели увидят сами, как Hudson, лучший на сегодня CI-сервер, сообщает о возникающих проблемах, давая тем самым возможность быстрее создавать надежное программное обеспечение.
В этом пособии последовательно рассказывается об основных идеях непрерывной интеграции с использованием в качестве среды Hudson, Ant и Subversion. После изучения этого одночасового учебного руководства станут понятны преимущества непрерывной интеграции, а также то, как правильно сконфигурировать Hudson, Ant и Subversion для совместной работы. В результате процесс сборки будет запускать как тесты, так и инспекции программного обеспечения, и сообщит о нарушениях почти сразу, как они произойдут, позволяя создавать надежное ПО гораздо быстрее.
Чтобы получить максимальную отдачу от этого пособия, необходимо общее знакомство с разработкой в среде Java™. Предполагается также, что читатель осознает значение сборки программного обеспечения с приемлемым уровнем качества, и что он знаком с JUnit.
Для построения системы непрерывной интеграции требуется инструмент для автоматизированной сборки, репозитарий системы управления версиями и CI-сервер. Чтобы в процессе освоения материала пробовать программу из этой статьи, необходимо иметь работающую платформу Java, а также Hudson 1.150, Ant 1.7, JUnit 3.8.1 и Subversion 1.4.x.
Для этого пособия рекомендуется следующая конфигурация системы:
- Система, поддерживающая либо Sun JDK 1.5.0_09 (или более новую версию), либо IBM Developer Kit for Java technology 1.5.0 SR3, с не менее чем 500 МБ оперативной памяти
- Не менее 20 MБ места на диске для установки компонентов программного обеспечения и рассматриваемых примеров
Указания в этом пособии даются применительно к операционной системе Microsoft® Windows®. Все инструменты, описанные в этом пособии, работают также и на системах Linux® и Unix®.
