Введение: тестирование — способ обеспечения качества программного продукта
Основные понятия тестирования.
Подходы к обоснованию истинности формул и программ и их связь с тестированием.
Фазы тестирования, основные проблемы тестирования и поставлена задача выбора конечного набора тестов.
Требования к идеальному критерию тестирования и классы частных критериев.
Особенности применения структурных и функциональных критериев на базе конкретных примеров.
Особенности применения методов стохастического тестирования и метод оценки скорости выявления ошибок.
Оценка оттестированности проекта: метрики и методика интегральной оценки.
Графовые модели проекта, метрики оценки оттестированности проекта, приводятся примеры плоской и иерархической моделей проекта.
Особенности модульного тестирования, подходы к тестированию на основе потока управления, потока данных, динамические и статические методы при структурном подходе. \
Подходы монолитного, инкрементального, нисходящего и восходящего тестирования.
Интеграционное тестирование и его особенности для объектноориентированного программирования.
Модель объектно-ориентированной программы.
Разновидности тестирования: системное и регрессионное тестирование.
Автоматизация тестирования.
Особенности индустриального тестирования.
Документирование и оценка индустриального тестирования.
Регрессионное тестирование: цели и задачи, условия применения, классификация тестов и методов отбора.
Регрессионное тестирование: разновидности метода отбора тестов.
Регрессионное тестирование: методики, не связанные с отбором тестов и методики порождения тестов.
Регрессионное тестирование: алгоритм и программная система поддержки.
Описание тестируемой системы и ее окружения.
Модульное тестирование на примере классов.
Интеграционное тестирование.
Системное тестирование.
Ручное тестирование.
Автоматизация тестирования с помощью скриптов.
Автоматическая генерация тестов на основе формального описания.