7 расширенных возможностей Visual Studio 2015 Enterprise
Не так давно компания Microsoft представила обновленные предложения продуктов семейства Visual Studio. Visual Studio 2015 Enterprise на текущий момент является топ-продуктом и предоставляет доступ ко всем возможностям, созданным компанией Microsoft для разработки программного обеспечения.
Не смотря на наличие бесплатной версии Visual Studio Сommunity, обладающей огромным функционалом, достаточным для комфортной разработки, возможности этих инструментов различаются. Посмотрим, некоторые дополнительные преимущества, которые предлагает Visual Studio 2015 Enterprise.
Помимо нюансов в вопросах масштабирования команды разработчиков, Visual Studio Enterprise также имеет заметные преимущества в технологических сценариях, а именно для отладки и тестирования создаваемого программного обеспечения.
Отладка
В VS 2015 Enterprise расширяются возможности работы с кодом, благодаря функциям CodeLense, Intellitrace, CodeMap и другим возможностям работы с большими объемами кода, которые пригодятся на следующих этапах развития проекта.
СodeLense
CodeLense представляют из себя подсказки, которые появляются над вашим кодом, предоставляющие информацию о том, какие зависимости есть у этого кода, результаты тестов этого метода, кто менял этот код, связанные рабочие элементы, чекины и т.д. Все, что необходимо знать о коде доступно в контексте редактора:
Для получения более подробной информации достаточно нажать на подсказку, чтобы переместится прямо в код, связанный с этим методом или классом.
Подробнее о возможностях CodeLense можно узнать по ссылке.
IntelliTrace
Возможности IntelliTrace значительно повышают продуктивность отладки. На диагностику ошибок может уходить большое количество времени: исходный код просматривается в поисках связанных фрагментов кода и интуитивно в разные места устанавливаются точки останова. IntelliTrace автоматически ведет журналы выполнения кода, запоминает и отмечает события в таймлайнах, которые далее можно просматривать, перемещаться и проверять состояния:
Двойное нажатие на событие переместит к связанному коду. А двойное нажатие на исключение позволит увидеть стек вызовов в те моменты, когда исключение было зафиксировано приложением:
CodeMap
Эта возможность пригодится при работе с большими кодовыми базами. Код, может быть написан другой командой разработчиков, может быть сложен и вам сложно его отлаживать. В этом случае пригодится CodeMap. Когда необходимо понять специфичные зависимости в имеющемся коде, можно визуализировать их в качестве карты, построить архитектуру решения, используя эту возможность.
Поддерживается так же перемещение по созданной карте с параллельно открытым кодом. Это помогает отслеживать ваше местонахождение в коде во время работы. Карты могут генерироваться для решения, проекта или функции, выбором опции через нажатие правой кнопки мыши соответственно:
Вы можете добавлять легенду, комментарии и т.д. Подробнее по ссылке.
Тестирование
Visual Studio 2015 Enterprise позволяет использовать все возможности платформы Microsoft, для обеспечения контроля за качеством выпускаемого продукта. VS Enterprise поддерживает инструменты для ручного тестирования, модульных тестов, нагрузочного тестирования, управления тестовыми средами и т.д.
IntelliTest
Использование технологии IntelliTest позволяет проанализировать код и автоматически сгенерировать соответствующие модульные тесты.
Для каждого выражения в коде генерируются входные данные. Анализируются так же все возможные операторы и выражения, которые могут вызвать исключения. Эти данные используются для генерации тестовых данных для использования их в качестве параметров модульных тестов для каждого метода:
IntelliTest позволяет обеспечить высокий уровень покрытия кода модульными тестами, например, при наличии больших «старых» кодовых баз, что может значительно повысить продуктивность разработки и сфокусироваться на выполнении задач для создания ПО.
При запуске IntelliTest можно сразу увидеть какие тесты выполнились, а какие провалились и добавить необходимый код, чтобы исправить эти ситуации.
Сгенерированные тесты можно сохранять в тестовые проекты для обеспечения регрессионного тестирования.
IntelliTest доступен для кода, написанного на C#.
Microsoft Fakes
Microsoft Fakes — фреймворк, который помогает при тестировании приложения, заменяя компоненты решения заглушками и обертками — небольшими управляемыми фрагментами кода. Например, изолируя зависимый код при тестировании, можно быть уверенными, что если тест не был пройден, то проблема находится именно в этом месте и не зависит от других факторов. Эти возможности позволяют расширить сценарии тестирования, позволяя тестировать код, когда другие части приложения не готовы или не работоспособны. Подробнее об этой возможности по ссылке.
Нагрузочное тестирование
В тестовом проекте для проверки производительности доступны инструменты для записи последовательности действий пользователей в браузере и оформления этих шагов в качестве теста. Инструменты позволят записать HTTP запросы и ответы. Затем Visual Studio произведет поиск динамических параметров для каждого ответа на HTTP запрос, создаст таблицу и позволит присвоить константы найденным параметрам.
После создания теста можно настроить его свойства и указать необходимые параметры:
Для создания нагрузочного теста Visual Studio предоставляет шаблон теста, который можно настроить при помощи мастера:
Затем добавить в него созданный тест производительности.
При запуске нагрузочных тестов с помощью аккаунта Visual Studio Online, выполнение тестов и генерирование нагрузки будет происходить в указанном датацентре Azure. Возможно так же выполнять нагрузочные тесты локально.
Visual Studio предоставляет сводку результатов о запуске теста, данные счетчиков производительности, инструменты для анализа теста пошагово:
Управление процессами разработки
Благодаря возможностям MSDN подписки, предоставляемой с Visual Studio 2015 Enterprise, становятся доступны инструменты для построения процессов управления проектами и командной работой: Team Foundation Server или Visual Studio Online Advanced.
Выбирая шаблоны процессов, с помощью нескольких манипуляций можно построить совместную работу всей команды, следить за выполнением плана, требований исправлением дефектов и т.д. Так же получать многоуровневую отчетность: от результатов выполнения сборки проекта до степени покрытия требований кодом.
Полезные ссылки