Система командной работы. Visual Studio Теам System
Подкатегории
Версия Visual Studio Professional делает потрясающую работу как интегрированная среда разработки; ее редакторы кода и визуальные конструкторы и мощные, и легкие в использо
вании. Версия Visual Studio Team System Development Edition расширяет роль разработчика и предоставляет инструменты для проверки кода. При помощи VS Team Developer вы можете проверить производительность и качество вашего кода. В этой версии есть инструменты статического и динамического анализа кода, профилирования кода, покрытия кода, а также средства модульного тестирования.
Статический анализ кода — это проверка исходного кода на стадии проектирования, которая выходит за пределы возможностей синтаксического контроля компилятора. Расширим эту аналогию: если проверка компилятора аналогична проверке правописания текстового процессора, то статический анализ кода аналогичен проверке грамматики: он пытается определить смысл вашего кода, а затем указать проблемные области.
Анализ кода производится при сборке/компиляции; аналитическими проверками можно управлять на вкладке Code Analysis диалогового окна свойств проекта (рис. 22.5).
Точно так же, как статический анализ кода работает на стадии проектирования, динамический анализ кода работает с вашим кодом на этапе выполнения. При профилировании ваш код анализируется для того, чтобы предоставить вам информацию о выполнении вашего приложения. Имеются два профилировщика кода. Выборочный профилировщик опрашивает ваше приложение и получает информацию о нем. Инструментирующий профилировщик вставляет зонды в ваш код на этапе компиляции; эти зонды выдают данные, которые собираются профилировщиком.
Метрики кода
Метрики кода (Code Metrics) являются способом генерирования объективной статистики о вашем коде. В версии VSTS Development Edition инструмент Code Metrics используется для создания представления о степени сложности кода и удобстве его…
Покрытие кода и модульное тестирование работают сообща. Модульное тестирование производится при помощи инфраструктуры на основе атрибутов (аналогичной используемой в инструментах JUnit и NUnit; возможно, вы знакомы с ними).
После создания теста вы можете использовать средства тестирования для того, чтобы определить, какие строки кода были фактически пройдены тестом. Это делается интерактивно в окне редактора кода (протестированные строки имеют зеленый фон, пропущенные — красный) и в окне результатов Code Coverage Results. Создание модульных тестов и проектов тестов поддерживается и в Visual Studio 2008 Professional, но VSTS Test Edition предоставляет следующие дополнительные возможности:
□ создание модульных Web-тестов, модульных тестов баз данных, ручных модульных…
В VSTS Test Edition вы можете создать следующие типы тестов:
□ Unit Tests (модульные тесты) — это те же самые модульные тесты, которые поддерживаются и в версии VSTS Development Edition;
□ Web Tests (Web-тесты)—* это последовательности HTTP-запросов для проверки функ-
%
циональности Web-приложений; они могут быть использованы в тестах производительности или для тестирования в предельных режимах;
□ Load Tests (тесты нагрузки) — используются для имитации трафика Web-сайта (см. следующий раздел)
□ Manual Tests (ручные тесты)— некоторые тесты невозможно автоматизировать или написать для них скрипты (такие как взаимодействие пользователя с пользовательским интерфейсом приложения). В этих случаях можно создать ручной тест. Ручные…
Тесты нагрузки являются в определенном отношении уникальными: VSTS может создать логический тестовый блок под названием стенд (rig). Стенды — это клиентские компьютеры (называемые агентами) и контроллер для генерирования нагрузки на систему. В Visual Studio Team Test имеются все возможности управления для создания агентов, присваивания их контроллеру, инкапсулирования группы агентов и контроллера в единый стенд, а также для выполнения тестов на стенде и наблюдения за ними.
Управление тестами осуществляется при помощи редактора Test List Editor (рис. 22.6).
Мы описываем тесты нагрузки в главе 28.
Версия Visual Studio Team System Database Edition стремится ввести разработчиков данных и администраторов баз данных в жизненный цикл разработки программного обеспечения — для этого она предоставляет инструменты, которые обращаются с объектами баз данных точно так же, как и с другими объектами проекта. Например, при помощи VSTS Database Edition вы можете поместить объекты базы данных в систему управления исходными кодами, а также тестировать хранимые процедуры. В следующих подразделах описаны основные наборы инструментов, поставляемые вместе с VSTS Database Edition.
Модульное тестирование так же важно для баз данных, как и для приложений. Вам захочется убедиться в том, что интерфейс прикладного программирования вашей базы данных (со- стоящий из хранимых процедур, триггеров и функций), структуры данных (таблицы и представления), а также система безопасности на уровне таблиц и пользователей способны пройти функциональное тестирование модульными тестами. Модульные тесты для объектов баз данных обрабатываются точно так же, как и любые другие модульные тесты Visual Studio Team System, а это в свою очередь означает, что их можно включить в любой тестовый набор.
Редактор T-SQL добавляет дополнительные возможности сверх стандартного визуального конструктора SQL в Visual Studio, в том числе: поддержку многопоточного выполнения хранимых процедур, улучшенную обработку и отображение результирующих наборов данных, а также улучшенную среду разработчика (с синтаксической подсветкой, выбором языка скриптов и статистикой запросов).
Разработчики данных могут написать в новом проекте базы данных скрипт схемы базы данных и метаданных и поместить их в систему управления версиями. Это позволяет членам команды работать с определениями базы данных вавтономном режиме (например, без прямого подключения к производственному или тестовому серверу SQL) — это большое преимущество, которое позволяет командам разрабатывать и тестировать, изменения схемы перед тем, как зафиксировать их на сервере.