www.smart-ex.kz Visual Studio 2005: Средства тестирования в Visual Studio 2005 Team Edition Докладчик: Юрий Охотников, инженер по обеспечению качества Компания SMART-EX Астана, 2005 Содержание Виды тестов Результаты тестов Профилирование и покрытие кода Организация тестов Связь с Team Foundation Server Виды тестов Модульные (Unit) тесты Web тесты Нагрузочные (Load) тесты Ручные (Manual) тесты Внешние (Generic) тесты Упорядоченные (Ordered) тесты Модульные тесты Тестируемый класс Акцессор Результат теста Тест Модульные тесты Модульные тесты Модульные тесты Модульные тесты Модульные тесты Модульные тесты Web тесты Тестируемое приложение ASP .NET Development Server Результат теста Тест Web тесты Web тесты Web тесты Web тесты Нагрузочные тесты Тестируемое приложение Сценарий теста • Состав тестов • Состав браузеров • Состав сети • Тип нагрузки • Прочие настройки Результат теста XML Характеристики тестового сценария Тестовый сценарий Состав тестов XML •Модульные •Web тесты Вид нагрузки •Постоянный (constant) •Инкрементальный (step) •Целевой (goal) Состав сети •LAN: •Dial-up •Cable/DSL •. . . Состав браузеров •Internet Explorer 6.0 •Netscape Navigator 6.0 •. . . Прочие настройки •Время выполнения •Время прогрева •Набор счетчиков производительности •. . . Нагрузочные тесты Нагрузочные тесты Ручные тесты Тестируемое приложение Тестировщик Сценарий теста Text Результат теста Ручные тесты Внешние тесты Тестируемое приложение Тестирующее приложение Тест XML Код завершения Файл результатов Результат теста Внешние тесты Упорядоченные тесты Тестируемое приложение Упорядоченный тест • Модульный тест • Web-тест • Ручной тест • Произвольный тест • Упорядоченный тест Результат теста XML Упорядоченные тесты Пространства имен для тестирования Microsoft.VisualStudio.TestTools.UnitTesting Microsoft.VisualStudio.TestTools.UnitTesting.Web Microsoft.VisualStudio.TestTools.WebTesting Microsoft.VisualStudio.TestTools.WebTesting .Rules Microsoft.VisualStudio.TestTools.LoadTesting Результаты тестов Ожидание (Pending) В процессе (In Progress) Таймаут (Timeout) Не пройден (Failed) Пройден (Passed) Прерван (Aborted) Не выполнен (Not Executed) Выполнение прервано (Passed but Run Aborted) Запуск невозможен (Not Runnable) Отключен (Disconnected) Завершен (Completed) Не реализован (Inconclusive) Профилирование кода Профилирование кода Покрытие кода Организация тестов Использование оснастки Оснастка (Rig) Агенты (Agents) Контроллеры (Controllers) Разработчики (Developers) Тестировщики (Testers) Состав тестового проекта Тестовый проект • Запуск из среды Visual Studio • Запуск с помощью утилиты командной строки Метаданные тестов •Ссылки на все тесты проекта •Списки тестов Собственно тесты •Код тестов •XML-файлы с данными о тестах •Файлы документов для ручного тестирования Конфигурации тестов •Сведения о развертывании •Выбранная оснастка •Скрипты инициализации и завершения тестов Публикация результатов 140 120 100 80 60 40 20 Passed ль А пр е т М ар ль ев ра Ф нв а рь 0 Я Список результатов тестов Failed Задачи исправления дефекта Результаты теста Задача (Work Item) Дефект Исправить ошибку Задача разработки тестов Задача (Work Item) Разработка Разработать тесты Тесты Build Verification Tests (BVT) Построение приложения (Build) Успешный билд BVT Прошли ли тесты проверки приложения? × √ Неуспешный билд Check-in policy Файлы исходного кода Прошли ли тесты проверки базовой функциональности? C# × √ Система контроля версий (SCM) Почему Visual Studio 2005? Функциональность Интеграция Простота и гибкость