Тема 25. Модульное тестирование (Unit Tests)
Модульные тесты позволяют разработчикам и тест-инженерам быстро искать логические ошибки в методах классов для проектов на языках Visual C#, Visual Basic и Visual C++.
Улучшение качества кода
Что такое качество кода? Правильность, удобство поддержки и даже элегантность — все это нужно, чтобы код можно было назвать отличным. Вне зависимости от определения, средства тестирования Visual Studio могут помочь в разработке и поддержке высоких стандартов качества кода.
Модульное тестирование кода. Обозреватель тестов позволяет легко интегрировать модульные тесты в вашу практику разработки. Можно использовать платформу для выполнения модульных тестов Microsoft или одну из нескольких сторонних платформ, в том числе платформы с открытым исходным кодом.
Анализ качества приложений с помощью средств анализа кода. Средства анализа статического кода помогают найти проблемы проектирования, использования, обслуживания и стиля в коде. Многие из этих проблем могут привести к ошибкам, которые трудно воспроизвести в стандартной среде тестирования.
Оценка сложности и удобства сопровождения управляемого кода. Метрики кода представляют собой набор оценок программного обеспечения, которые дают разработчикам более глубокое представление о разрабатываемом коде. Эти метрики включают индекс удобства поддержки для функций и классов, цикломатическую сложность функций, глубину наследования классов и величину взаимозависимости между классами.
Поиск повторяющегося кода с помощью обнаружения клонов кода. Средство поиска клонов кода выполняет поиск повторяющегося или примерно одинакового кода в проектах Visual C# и Visual Basic в пределах решения Visual Studio. Можно выполнить рефакторинг кода для исключения дублирования и получения более простого в сопровождении решения.
PreEmptive Analytics для Team Foundation Server. PreEmptive Analytics для TFS CE помогает интегрировать процедуры разработки на основе обратной связи в применяемые процессы разработки. Приложения будут автоматически отправлять данные с отчетами об исключениях в службу PreEmptive Analytics при возникновении ошибок во время работы.Затем служба создает или обновляет рабочие элементы в Microsoft Team Foundation Server на основе правил и порогов, определенных пользователем.
PreEmptive Dotfuscator — это средство по запутыванию и сжатию кода .NET, обеспечивающее защиту программ от реконструирования с одновременным уменьшением их размера и увеличением их эффективности.
Средства обеспечения модульных тестов:
Средства обеспечения модульных тестов включают:
Обозреватель тестов. Обозреватель тестов позволяет выполнять модульные тесты и просматривать их результаты.Обозреватель тестов может использовать любые тестовые платформы, в том числе сторонние платформы, которые имеют адаптер для обозревателя.
Платформа для тестирования Microsoft. Платформа для тестирования Microsoft устанавливается с Visual Studio и предоставляет среду для тестирования кода.
Средства покрытия кода. Можно определить объем кода продукта, который покрывают модульные тесты, при помощи одной команды в Обозревателе тестов.
Платформа изоляции Microsoft Fakes. Платформа изоляции Microsoft Fakes может создать постановочные классы и методы для рабочего кода и систем, которые создают зависимости в тестируемом коде. Путем реализации подставных делегатов для функции можно контролировать поведение и возвращаемые значения объекта зависимости.
Кроме того, можно использовать компонент IntelliTest, который изучает код .NET для создания тестовых данных и наборов модульных тестов.Для каждого оператора в коде создаются входные данные теста, которые будут выполнять этот оператор.Анализ случая выполняется для каждой условной ветви в коде.
Дополнительная литература
Улучшение качества кода https://msdn.microsoft.com/ru-ru/library/dd264943.aspx
Модульное тестирование кода https://msdn.microsoft.com/ru-ru/library/dd264975.aspx