В этой лекции объясняется, как автоматизировать процесс сборки при помощи Team Build. Описаны некоторые распространенные затруднения, и сравниваются различные подходы к сборке - от ежедневных плановых сборок до непрерывной интеграции.
Подсистема Team Build основана на системе Microsoft Build Engine (MS-Build) и позволяет извлекать исходный код для сборки, компиляции решения и (при необходимости) для запуска в процессе сборки инструментов модульного тестирования и анализа статического кода. Вы также можете поместить результат сборки на заданном общем ресурсе.
Исходный код, используемый для определенной сборки, Team Build помечает номером, чтобы в дальнейшем вы могли извлечь код, использованный для создания именно этой сборки. Если произойдет сбой, настройте Team Build на создание соответствующих рабочих элементов и на уведомление пользователей о произошедшей ошибке.
В этом разделе рассказывается об архитектуре Team Build и о логической последовательности рабочих операций.
Физическая архитектура Team Build состоит из следующих компонентов:
New Team Build Type Creation Wizard - клиентский компонент для создания новых типов сборок; доступен из Team Explorer.Team Build - клиентский компонент, позволяющий просматривать отчеты Team Build и информацию о выполнении сборки в Team Explorer.Team Foundation Build - компонент уровня приложения, принимающий запросы от клиента и координирующий выполнение этапов сборки.Build Service ) - выполняет различные этапы сборки, получая инструкции от веб-службы Team Build. Ее можно разместить на отдельном сервере сборки или на сервере уровня приложений.Team Foundation Build - компонент уровня данных, используется для хранения записей, относящихся к процессам Team Build.Логика процесса сборки Team Build проиллюстрирована на рис.7.11.
(рис 7.1) Логика рабочего процесса Team Build Подсистема Team Build интегрирована с сервером TFS на уровне приложения и взаимодействует с рабочими элементами, покрытием кода тестами, анализом кода, тестовыми данными и отчетами.
Управление сборкой осуществляется при помощи файла TFSBuild.proj. В нем определяются собираемые проекты, конфигурации, места накопления результатов, анализ кода и выполняемые тесты. Этот файл генерируется мастером Team Build Creation Wizard при создании сборки. Его можно редактировать непосредственно.
В Team Build используется система событий сервера TFS. События Team Build можно применять для создания собственных этапов сборки, а также для генерации уведомлений об изменении состояния сборки или о ее завершении.
Обратите внимание следующие ключевые моменты физической архитектуры Team Build:
Team Foundation Build работает на основе MSBuild.TFSBuild.proj содержит все параметры сборки. Он создается мастером Team Build Creation Wizard и допускает непосредственное редактирование.TFSBuild.rsp содержатся параметры командной строки для MSBuild. Его также можно изменять.BuildStatusChangeEvent и BuildCompletionEvent.TeamBuild интегрируется с рабочими элементами, охватом кода, анализом кода и тестовыми данными.Team Build состоит из службы Team Build Service, работающей поверх системы сборки MSBuild. Система MSBuild выполняет собственно сборку, а служба Team Build отвечает за взаимодействие с уровнем приложения TFS. Сборки Team Build создаются в клиенте Visual Studio. Разработчик может запускать их из клиента, при помощи события на сервере сборки или из командной строки, например, как запланированную задачу. Процесс сборки состоит из следующих этапов:
После завершения сборки вам доступны следующие элементы:
Для определения стратегии сборки выполните следующие действия:
Большинство команд разработчиков создают сборки для одного или нескольких типов потребителей:
У потребителей каждого типа свои требования к качеству сборок и частоте их выпуска. Как правило, их можно разделить на две группы: одним нужны плановые сборки, выпускаемые по расписанию, другим - сборки, оперативно создаваемые на основе происходящих событий. Плановые сборки обычно создаются ежедневно, но это может происходить как чаще, так и реже. Сборки, управляемые событиями, обычно инициируются возвратом исходного кода в систему и предназначены для быстрого предоставления команде разработчиков информации о качестве кода. Если у разработчиков возникли проблемы с неработающими сборками, попробуйте использовать модель возврата кода с контролем качества ( gated check-in ), в которой сборки тестируются, прежде чем разрешается их помещение в дерево исходного кода.
Выбирайте сценарии решения, опираясь на степень их соответствия конкретной ситуации. Если вы сомневаетесь, используйте самый простой из возможных сценариев - плановую сборку - и усложняйте его только при необходимости. Ниже перечислены наиболее распространенные сценарии командных сборок:
rolling build ). Сборки при этом создаются не так часто, но и время между возвратом кода и получением результата возрастает незначительно.Плановая сборка выполняется через определенные промежутки времени. Цель плановой сборки - создание согласованных надежных сборок, которые можно использовать для получения информации о качестве сборки. Плановые сборки обычно выполняются ежедневно, но могут выполняться реже или чаще, в зависимости от потребностей.
Чаще всего потребителями плановых сборок являются:
Для создания плановой сборки выполните следующие действия:
Более подробную информацию вы найдете в лекции 9.
При непрерывной интеграции сборка запускается каждый раз, когда происходит возврат кода после правки. Назначение такой сборки - максимально быстрое получение информации о качестве сборки. Потребителями непрерывной интеграции обычно являются команды разработчиков.
Выберите одну из следующих стратегий в зависимости от размера команды, размера сборки и частоты возврата кода:
Более подробную информацию вы найдете в лекции 8.
Возврат кода с контролем качества означает, что возвращаемый код должен удовлетворять определенным стандартам качества, чтобы его можно было добавить в дерево исходного кода. За счет выполнения ряда тестов снижается количество сбоев сборки и повышается ее качество.
Существует несколько типичных сценариев, которые в Team Build по умолчанию не поддерживаются. Подумайте, не сталкивается ли ваша команда с какой-либо из следующих ситуаций.
Team Build не поддерживает приложения Visual Basic 6.0. Для компиляции таких приложений используйте собственный послесборочный этап.Подробнее - в статье "MSBuild task to build VB6" по адресу http:// freetodev.spaces.live.com/blog/cns!EC3C8F2028D842D5!261.entry.
При работе в крупных проектах следует учитывать следующие отличия больших команд:
Работая в крупных командах разработчиков, учитывайте следующие соображения:
Информация о сборке, например, сервер сборки, место накопления, каталог сборки, задается в файле TFSBuild.proj. Он содержит значительную часть сведений, необходимых для выполнения командной сборки, включая расположения сборки и указания на то, требуется ли выполнять статический анализ кода и модульные тесты. Чтобы изменить эту информацию, отредактируйте файл TFSBuild.proj, выполнив следующие действия:
При следующем выполнении сборки будут использованы обновленные данные. Подробнее о настройке сборки - в разделах "Настройка" руководства по сборке и практических рекомендациях по сборке в этом курсе.
Team Build основана на системе MSBuild. Она интегрируется с сервером TFS на уровне приложения и взаимодействует с рабочими элементами, покрытием кода тестами, тестовыми данными и отчетами.
Определяя стратегию сборки, необходимо учитывать требования к ней и запросы потребителей сборки. Обычно для получения согласованных сборок, необходимых тестировщикам и другим потребителям, применяют плановые сборки, а для быстрого получения информации о качестве сборки используют непрерывную интеграцию.
Team Build ", "Как настроить непрерывную сборку в Visual Studio Team Foundation Server ", "Как настроить плановую сборку в Visual Studio Team Foundation Server ".Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.