Тестирование и обеспечение качества ПО

Описание

Курс посвящён вопросам обеспечения качества сложных программных систем и современным методам их тестирования. Рассматриваются различные подходы к верификации программного обеспечения, включая классические техники построения тестов, основанные на конечных автоматах и комбинаторных схемах. Также изучаются более адаптированные к сложным системам методики тестирования, объединяющие различные подходы.

В рамках курса анализируются методы организации тестовых наборов, понятие полноты тестирования и критерии её оценки, а также формальные модели и их применение для определения качества программного обеспечения. Практическая часть включает анализ требований к программным продуктам, освоение методов инспекции кода и разработку тестов для различных типов программных систем — от простых функций до сложных систем с состояниями и пользовательским интерфейсом, включая веб-приложения.

Обучающиеся получают фундаментальные знания и навыки в области тестирования, знакомятся с тестированием на основе формальных моделей, а также изучают практические аспекты этого подхода, который активно развивается на стыке теоретической информатики и программной инженерии.

Программа курса

  • Цели и задачи тестирования ПО
  • Качество программного обеспечения и методы его контроля
  • Методы верификации ПО
  • Организация тестовых наборов
  • Модели поведения ПО
  • Модели ситуаций и критерии полноты тестирования
  • Основные методы построения тестов
    • Вероятностные и нацеленные методы
    • Комбинаторные методы построения тестов
    • Автоматные методы построения тестов
    • Интегрированные технологии построения тестов

Предварительные требования:

Ссылки

ВШЭ