О компании Fabrikam Fiber

advertisement
Лабораторная работа
Новые инструменты Team Foundation
Server 2013 для взаимодействия между
командами разработки
Lab version:
12.0.21005.1
Last updated:
12/2/2013
СОДЕРЖАНИЕ
РЕЗЮМЕ ...................................................................................................................................................... 3
УПРАЖНЕНИЕ 1: ВЗАИМОДЕЙСТВИЕ В КОМАНДНОЙ КОМНАТЕ .................................................... 4
УПРАЖНЕНИЕ 2: ЛЕГКОВЕСНЫЕ КОММЕНТАРИИ К КОДУ ............................................................. 15
УПРАЖНЕНИЕ 3: CODELENS ................................................................................................................. 22
Резюме
Из этой лабораторной работы вы узнаете о новых функциях Visual Studio 2013 и Team Foundation
Server 2013, включающих командные комнаты (Team Rooms), легковесные комментарии к коду
(Lightweight Code Comments), CodeLens и предназначенных для взаимодействия между
командами разработки.
Prerequisites
Для выполнения лабораторной работы вам понадобится виртуальная машина с Visual Studio 2013.
Подробнее про то, где загрузить и как ее использовать, здесь.
О компании Fabrikam Fiber
Эти лабораторные работы в качестве основы для сценариев, о которых вы узнаете в процессе,
оперируют несуществующей компанией Fabrikam Fiber. Fabrikam Fiber занимается кабельным
телевидением и сопутствующими сервисами в США. Компания быстро растет и уже начала
использовать Microsoft Azure для того, чтобы масштабировать свой веб-сайт для обслуживания их
запросов и отслеживания деятельности инженеров. Компания использует локальное приложение
ASP.NET MVC для управления заказами клиентов.
В этих лабораторных работах вы изучите сценарии, включенные в рабочий процесс команды
разработки и тестирования Fabrikam Fiber. Команда, состоящая из 8-10 человек, решила
использовать средства управления жизненным циклом проектов Visual Studio 2013 для того, чтобы
контролировать программный код, выполнять сборки, тестировать веб-сайты, планировать и
отслеживать происходящее с проектом.
Упражнения
Эта лабораторная работа включает в себя следующие упражнения:
1. Взаимодействие в командной комнате
2. Легковесные комментарии к коду
3. CodeLens
Примерное время выполнения лабораторной работы: 60 минут.
Упражнение 1: Взаимодеиствие в
команднои комнате
В этом упражнении вы научитесь использовать новую функцию Team Foundation Server 2013 и
Team Foundation Service, называющуюся командной комнатой (Team Room). Эта функция
предназначена для создания отдельных пространств для взаимодействия между членами
команды.
1. Войдите под аккаунтом Julia Ilyiana (VSALM\Julia). Пароль: P2ssw0rd.
2. Запустите Internet Explorer и нажмите TFS Portal.
Изображение 1
Запуск портала
Примечание: можно также нажать на Web Portal в Team Explorer в Visual Studio.
3. Нажмите Rooms и войдите в Default Team Room.
Изображение 2
Переход в комнату команды
Примечание: войти в комнату можно со страницы проекта – там есть соответствующий
тайл.
4. Эта комната была автоматически создана для проекта Default, отсюда и название “Default
Team Room”. В левой части находится панель Rooms Explorer, с помощью которой можно
переходить между комнатами и выполнять ряд административных задач. В правой части
выбранной комнаты показывается количество сообщений и активность за день.
Изображение 3
Комната Default
5. Содержимое комнаты сохраняется, поэтому члены команды могут вернуться в любой
момент и увидеть, что произошло в их отсутствие. Нажмите на кнопку стрелки слева от
даты.
Изображение 4
Переход на предыдущий день комнаты
6. Похоже, что ничего важного мы не пропустили – вернемся к текущей дате, нажав Live.
Изображение 5
Возврат на текущую дату
7. Посмотрим на то, что можно использовать в чате. Упоминать члена команды можно,
используя @ с именем. Наберите good morning @ - после ввода @ вам покажется список
членов команды в этой комнате.
Изображение 6
Упоминание члена команды
8. Наберите ‘Brian Keller’ или выберите его из списка и нажмите Enter.
Изображение 7
Упоминание члена команды
9. Подключите еще одного члена команды к комнате с помощью Remote Desktop – войдите
под аккаунтом “VSALM\brian”, используя пароль “P2ssw0rd”, и войдите в Default Team
Room.
Примечание: Можно войти по RDP на ‘localhost’ прямо в виртуальной машине.
10. То, как видит адресованное ему сообщение Brian, отличается от того, как видит его Julia.
Изображение 8
Упоминание члена команды
11. Еще один тип упоминаний может быть использован для ссылок на рабочие задачи в
проекте. От Julia напишите сообщение, упоминающее задачу #1.
Изображение 9
Упоминание рабочей задачи
12. Нажмите на ссылку в сообщении, чтобы перейти на связанную задачу.
Изображение 10
Ссылка на рабочую задачу
Изображение 11
Задача открывается в новом окне браузера
13. Закройте задачу и вернитесь в чат.
14. К другим элементам, отражающимся в чате как ссылки, относятся URL, сетевые пути (UNC)
и email.
Изображение 12
Другие элементы-ссылки
15. Еще одной особенностью комнат является возможность настройки автоматических
сообщений по какому-либо событию. Нажмите “Manage events…” в комнате Default Team
Room.
Изображение 13
Настройка событий
16. В Configure Events for Default Team Room есть четыре опции - Build Completion, Code
Changes, Work Item Updates и Code Reviews. С помощью опции Build completion может
быть обработано событие, возникающее при завершении выбранных сборок.
Изображение 14
Настройка события завершения сборки
17. Перейдите на вкладку Code Changes. На ней можно настроить реакцию на событие,
связанное с чекинами в выбранных проектах.
Изображение 15
Настройка события изменения кода
18. Перейдите на вкладку Work Item Updates. На ней можно настроить реакцию на событие,
возникающее при создании или обновлении состояния рабочей задачи. Выберите проект
Default и нажмите Save and Close.
Изображение 16
Настройка события изменения рабочей задачи
19. Нажмите на ссылку на задачу #1 в чате Default Team Room.
Изображение 17
Ссылка на рабочую задачу
20. Измените статус с New на Approved и нажмите Save.
Изображение 18
Обновление состояния рабочей задачи
21. Вернитесь в Default Team Room. После изменения состояния задачи в чат было
автоматически добавлено сообщение.
Изображение 19
Уведомление о наступлении события
22. Комнаты были спроектированы с учетом расширяемости, что позволит в будущем
разработчикам добавлять собственные события и клиентов. Если вам интересна подобная
функциональность – напишите VSKitFdbk@microsoft.com . Подробнее - preview REST API.
Упражнение 2: легковесные
комментарии к коду
В этом упражнении вы изучите новую функцию Team Foundation Server 2013 и Team Foundation
Service – легковесные комментарии к коду (Lightweight Code Comment) в браузере.
1. Войдите под аккаунтом Julia Ilyiana (VSALM\Julia). Пароль: P2ssw0rd.
2. Запустите Internet Explorer и нажмите TFS FF Portal.
Изображение 20
Запуск портала
3. Нажмите Code.
Изображение 21
Переход в раздел кода
4. Нажмите Changesets. Легковесные комментарии могут использоваться в changesets и
shelvesets.
Изображение 22
Переход в раздел Changesets
5. Введите в строку поиска 47 для перехода в changeset 47 и нажмите Enter.
Изображение 23
Ссылка на набор изменений
6. Этот набор изменений содержит две правки, выделенные в обзоре различий.
Изображение 24
Выделенные правки
7. Нажмите Add Comment.
Изображение 25
Кнопка добавления комментария
8. Введите комментарий “What was the reason for changing the connection strings?” и
нажмите Enter.
Изображение 26
Добавление комментария в changeset
9. Для того, чтобы добавить комментарий в конкретный файл, выберите первый Web.config.
Изображение 27
Просмотр различий для конкретной правки
10. Нажмите Add Comment.
Изображение 28
Кнопка добавления комментария
11. Добавьте комментарий произвольного содержания.
Изображение 29
Комментарий к конкретной правке
12. Если вы наведете курсор на пространство выше содержимого файла, вы увидите, что здесь
есть аналогичная кнопка Add Comment. Нажмите ее, зажав курсором одну из строк, для
добавления комментария.
Изображение 30
Добавление комментария к строке кода
Изображение 31
Добавление комментария к строке кода
Примечание: вы можете выбирать часть выражения или комментария.
13. Войдите под аккаунтом Brian , используя последовательность действий, описанную в
первом упражнении, и перейдите в changeset 47 на веб-портале Fabrikam Fiber – вы
должны увидеть комментарии Julia.
Изображение 32
Просмотр чужих комментариев
14. Нажмите под первым комментариев Julia ссылку Reply и напишите ей ответ.
Изображение 33
Ответ на комментарий Julia (от Brian)
Изображение 34
Ответ на комментарий Julia
Упражнение 3: CodeLens
В этом упражнении вы изучите новую функцию Visual Studio 2013 и Team Foundation Server 2013 CodeLens. Эта функция позволяет получить информацию о классах, методах и свойствах прямо
внутри редактора.
1. Войдите под аккаунтом Julia Ilyiana (VSALM\Julia). Пароль: P2ssw0rd.
2. Запустите Visual Studio 2013.
3. В Team Explorer – Home нажмите два раза на первом решении
“FabrikamFiber.CallCenter.sln”.
Изображение 35
Загрузка решения Fabrikam Fiber Call Center
4. В Solution Explorer нажмите два раза на файле FabrikamFiber.Web | Controllers |
CustomersController.cs.
Изображение 36
CustomersController.cs
5. Класс и его методы показывают одну полоску с индикаторами. Эти индикаторы нужны для
того, чтобы дать разработчику различную информацию – как используется код, как
тестируется и как изменяется.
Примечание: CodeLens можно использовать только для управляемого кода.
Изображение 37
Индикаторы CodeLens
6. Внутри метода Create, принимающего объект Customer в качестве параметра, выберите
индикатор references. Этот индикатор показывает ссылки на этот метод.
Изображение 38
Индикатор References
Примечание: вы можете зажать Alt и нажать одну из цифр для быстрого доступа к
индикатору.
7. Если вы нажмете два раза на ссылке, то перейдете к соответствующему месту в коде.
Нажмите Escape.
8. Выберите индикатор Author над тем же методом. Перед выбором этого индикатора
можно увидеть, что он показывает последнее изменение кода и людей, которые вносили
изменения до этого.
Изображение 39
Индикатор Author
Примечание: Team Foundation Server 2013 содержит интеграцию этого индикатора и
авторов с Lync.
9. Если вы развернули индикатор Author, то в этом окне доступно описание набора
изменений, автор и дата. Нажмите два раза на самом верхнем наборе изменений для
загрузки просмотра различий
Изображение 40
Просмотр различий
Изображение 41
Просмотр различий для выбранного changeset
10. Вернитесь в файл CustomersController.cs.
11. Выберите индикатор Changes.
Изображение 42
Индикатор Changes
12. Нажмите правой кнопкой на одной из записей внутри индикатора Changes. Вам
доступны: просмотр различий, обзор набора изменений и возможность отправить email
автору изменений.
Изображение 43
Дополнительные возможности индикатора
13. Нажмите Escape.
14. Выберите индикатор Tested By. Он показывает, что для этого кода связанные с ним тесты
не выполнялись.
Изображение 44
Индикатор Tested By
15. Нажмите Run All, чтобы выполнить тесты.
Изображение 45
Выполнение всех связанных с методом Create тестов
16. Один из тестов не выполняется – снова выберите индикатор Tested By для того, чтобы
понять, в чем проблема.
Изображение 46
Индикатор Tested By, показывающий не выполнившийся тест
17. Посмотрим на сам тест – надо понять, проблема в самом тесте или в тестируемом методе.
Нажмите два раза на тесте CreateNullCustomer.
Изображение 47
Переход к тесту
18. Тест CreateNullCustomer подразумевает, что при вызове Create с null в качестве параметра
будет выброшено ArgumentNullException. Рядом с тестом есть индикатор Test Status.
Изображение 48
Индикатор с результатами тестов
19. Выберите индикатор, показывающий тест CreateNullCustomer, для просмотра
дополнительной информации.
Изображение 49
Просмотр дополнительной информации по тесту
20. Логика теста понятна, поэтому давайте исправим метод Create. Вернитесь к файлу
CustomersController.cs и добавьте в начало метода Create выделенный код.
C#
if (customer == null)
{ throw new System.ArgumentNullException("customer"); }
Изображение 50
Исправление метода Create
21. Выберите индикатор Tested By и выполните тест CreateNullCustomer, нажав Run.
Изображение 51
Re-run tests
22. Сейчас должны проходить все тесты.
Изображение 52
Все тесты пройдены
Примечание: если все тесты пройдены, этого индикатора не будет видно. Это одна из
особенностей и целей CodeLens – предоставление разработчику только полезной
информации во избежание его отвлечения. Поведение CodeLens может быть изменено
или отключено в Tools | Options.
To give feedback please write to VSKitFdbk@Microsoft.com
Copyright © 2016 by Microsoft Corporation. All rights reserved.
Download