Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Командная разработка с использованием Visual Studio Team Foundation Server

Покупка
Новинка
Артикул: 826673.01.99
Доступ онлайн
1 000 ₽
В корзину
Курс посвящен развертыванию Team Foundation Server и его эффективному использованию для управления исходным кодом, автоматизации сборок, управления рабочими элементами и процессами. Цель создания этого курса - предоставить ресурсы, рекомендации и советы по созданию эффективной среды для командной разработки ПО всем, кто так или иначе вовлечен в эту деятельность.
Командная разработка с использованием Visual Studio Team Foundation Server : краткий учебный курс / Д. Д. Мейер, Д. Тейлор, А. Макман [и др.] ; - Москва : ИНТУИТ, 2016. - 504 с. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2140195 (дата обращения: 08.05.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Командная разработка с использованием Visual
Studio Team Foundation Server

2-е издание, исправленное

Мейер Д.Д.
Тейлор Д.
Макман А.
Бансод П.
Джонс К.

Национальный Открытый Университет “ИНТУИТ”
2016

2
Командная разработка с использованием Visual Studio Team Foundation Server/ Д.Д. Мейер, Д. Тейлор,
А. Макман, П. Бансод, К. Джонс - М.: Национальный Открытый Университет “ИНТУИТ”, 2016

Курс посвящен развертыванию Team Foundation Server и его эффективному использованию для
управления исходным кодом, автоматизации сборок, управления рабочими элементами и
процессами.
Цель создания этого курса - предоставить ресурсы, рекомендации и советы по созданию
эффективной среды для командной разработки ПО всем, кто так или иначе вовлечен в эту
деятельность.

(c) ООО “ИНТУИТ.РУ”, 2010-2016
(c) Мейер Д.Д., Тейлор Д., Макман А., Бансод П., Джонс К., 2010-2016

3
Знакомство с Team Environment

В этой лекции: поддержка цикла разработки программного обеспечения в Microsoft
Visual Studio Team Foundation Server ; использование Team Foundation Server в
типичной группе разработчиков; использование Team Foundation Server в типичной
группе тестировщиков; описание физической среды группы разработчиков и
тестировщиков.

Обзор

В этой лекции рассказывается, как использовать Team Foundation Server (TFS) и

Microsoft Visual Studio Team System (VSTS) в среде командной разработки ПО.
Здесь рассматриваются основные возможности TFS и VSTS, а также автоматизация
документооборота между группами разработчиков и специалистов по тестированию. В

TFS объединены контроль качества исходного кода, наблюдение за ходом выполнения
работы, составление отчетов, управление проектом и автоматизация процесса сборки.
Это позволяет команде разработчиков работать более эффективно.

Успешный проект командной разработки ПО состоит из множества процессов,
слаженная работа которых необходима для создания эффективной рабочей среды. К
основным процессам относятся:

разработка;
тестирование;
сборка;
развертывание;
выпуск.

В этой лекции вы познакомитесь с типичными приемами, которыми пользуются
команды разработчиков и специалистов по тестированию при работе с TFS. Здесь
описано, как использовать TFS для управления рабочим процессом и обеспечения
продуктивного сотрудничества между группами.

Более подробную информацию об архитектуре и основных компонентах TFS вы
найдете в лекции 2.

Логическая организация работы в Team Foundation Server

Продукт TFS позволяет команде разработчиков хранить исходный код в
централизованном хранилище. Извлекая код из хранилища, при помощи сервера
сборки вы создаете сборки (build) , а затем передаете их группе испытателей.

На рис.1.1 показано, как в TFS организован рабочий процесс и как связаны между собой
среда разработчиков и среда испытателей.

4
Рис. 1.1.  Логический документооборот Team Foundation Server

Тестовая группа запускает результаты сборки в тестовой среде, проводя сочетание
ручных и автоматических тестов. Результаты тестов хранятся в TFS и используются для
организации обратной связи по вопросам качества сборки. Кроме того, тестовая группа
может создавать рабочие элементы и ошибки (особый тип рабочего элемента), на
которые группе разработчиков следует обратить внимание. Эти элементы позволяют
группе тестирования отслеживать работу группы разработчиков.

Логическая организация работы в средах разработки, тестирования
и производства

В крупных организациях, где имеется несколько групп разработчиков, у каждой из них
есть собственный TFS с отдельными хранилищами и серверами сборки. На рис.1.2
показан пример логического потока операций для двух групп разработчиков,
передающих сборки в объединенную группу испытаний.

5
Рис. 1.2.  Логическая организация работ в двух группах разработчиков и одной группе
комплексного тестирования

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

Процесс разработки

Работая над проектом ПО, разработчики вовлечены в несколько ключевых
взаимодействий с TFS. Например, разработчик взаимодействует с TFS следующими
способами:

Осуществляет доступ к ошибкам и задачам TFS, чтобы выяснить, какую работу
ему нужно сделать. Рабочие элементы могут назначаться разработчику
менеджером проекта, другим разработчиком или испытательной группой.
Использует обозреватель исходного кода (Source Control Explorer) VSTS для
получения доступа к хранилищу исходных кодов TFS и загружает последнюю
версию исходного кода в локальную рабочую область или на свой компьютер.
Выполнив назначенную задачу снова помещает код в БД управления исходным
кодом.

Размещение кода может запустить процесс непрерывной сборки при помощи Team

Build. Если сборка завершилась неудачей, создается новый рабочий элемент для

6
отслеживания ошибки.

Процесс тестирования

Тестировщик взаимодействует с TFS следующими способами:

Извлекает результат плановой сборки из точки сбора.
При помощи различных инструментов VSTS выполняет ручное и автоматическое
тестирование, включая проверку безопасности, производительности и работы в
веб.
Выгружает результаты испытаний в БД тестирования для последующего
использования.
Регистрирует ошибки, выявленные в ходе тестирования, как новые рабочие
элементы TFS.
Разрешает существующие ошибки, если они устранены в последней сборке.

Физические среды разработки и тестирования

Количество компьютеров в средах разработки и тестирования зависит от размера групп
и объема проектов. На рис.1.3 изображена типичная физическая среда разработки и
тестирования.

Рис. 1.3.  Физическая среда разработки и тестирования

7
Среда разработки

Среда разработки служит для поддержки процессов разработки и сборки и содержит
следующие компьютеры:

сервер Team Foundation Server ;
сервер сборок;
сервер для сбора результатов работы сервера сборок;
рабочие станции разработчиков.

Если группа разработчиков осуществляет удаленный доступ к TFS или размер ее столь
велик, что отрицательно сказывается на производительности центрального сервера TFS,
для повышения эффективности работы вы можете также настроить TFS -прокси.

Среда тестирования

Среда тестирования состоит из одной или нескольких рабочих станций, на которых
установлен продукт Visual Studio Team Edition for Software Testers. Он
используется для управления циклом тестирования, а также для выполнения
функционального тестирования, системного тестирования, тестирования
производительности и веб-тестирования. Члены группы используют TFS для
управления рабочими элементами, ошибками и результатами тестов.

В среду тестирования также может включаться продукт Visual Studio Team Test Load
для проверки производительности.

Резюме

Продукты VSTS и TFS предназначены для поддержки цикла разработки ПО и
объединяют различные его аспекты, например, контроль качества исходного кода,
наблюдение за ходом выполнения работы, составление отчетов, управление проектом и
автоматизацию сборки.

TFS играет определяющую роль в обеспечении сотрудничества между группами
тестировщиков и разработчиков. Группа разработчиков взаимодействует с TFS на
протяжении цикла разработки, осуществляет доступ к системе контроля за исходным
кодом, а также к ошибкам и рабочим элементам, чтобы выяснить, какие от нее
требуются действия. Группа тестирования взаимодействует с TFS для запуска тестов,
выгрузки результатов тестов и регистрации ошибок.

Дополнительные ресурсы

Дополнительные сведения об основах TFS вы найдете в статье “Team Foundation
Server Fundamentals: a Look at the Capabilities and Architecture” по адресу ссылка:

8
http://msdn2.microsoft.com/en-us/library/ms364062(vs.80).aspx.
Обзор продукта Team Foundation содержится в документации к Team Foundation
на веб-сайте Microsoft MSDN® по адресу ссылка: http://msdn2.microsoft.com/en-
us/library/ms181232(vs.80).aspx.

9
Архитектура Team Foundation Server

В этой лекции: архитектура продуктов Microsoft Visual Studio Team System (VSTS) и
Team Foundation Server (TFS) ; компоненты, составляющие уровни клиента,
приложений и данных; различия между односерверной и многосерверной разработкой.

Обзор

В этой лекции вы познакомитесь с архитектурой TFS и основными топологиями
разработки. Логически TFS обладает трехуровневой архитектурой, состоящей из
клиентского уровня ( client tier ), уровня приложений ( application tier ) и уровня
данных ( data tier ). Клиенты TFS взаимодействуют с уровнем приложений
посредством различных веб-служб. Уровень приложений пользуется различными
базами данных Microsoft SQL Server на уровне данных.

Вы вольны установить уровень приложений и уровень данных как на одном
физическом сервере, так и на разных серверах. В основном, выбор определяется
размером группы. Односерверное развертывание более уместно в группах,
насчитывающих менее 50 членов, хотя достаточно мощный сервер способен
поддерживать и до 400 пользователей. Многосерверное развертывание позволяет
увеличить количество пользователей до 2000.

Из этой лекции вы узнаете об основных компонентах TFS и об их взаимодействии друг
с другом, а также о назначении каждого из этих компонентов и о том, каким образом
обычно производится их развертывание.

Если вы не знакомы с TFS, сначала прочтите лекцию 1. В ней описано, как группы
разработчиков и тестировщиков взаимодействуют с TFS, чтобы упростить
сотрудничество и повысить эффективность разработки ПО.

Архитектура Team Foundation Server

В TFS использована логическая трехуровневая архитектура, разделяющаяся на
клиентский уровень, а также уровни приложений и данных. Клиенты TFS
взаимодействуют с уровнем приложений посредством различных веб-служб. В свою
очередь, уровень приложений поддерживается различными базами данных на уровне
данных. Компоненты уровня TFS и их взаимодействие проиллюстрированы на рис.2.1.

10
Доступ онлайн
1 000 ₽
В корзину