Модели приложения для разных парадигм программирования (SQAdays-2020)
На SQAdays#27 6-7.11.2020 в Москве Доклад на сайте конференции Видео на vimeo Тема развивалась в докладе на ArchDays (видео тоже есть)
Долгое время большинство приложений разрабатывалось как большие монолиты или системы из крупных модулей (Вирт "Алгоритмы + Структуры данных = Программы"), в которых обработку запроса пользователей можно было представить как выполнение процедуры. И для тестирования было достаточно проверить ответ приложения для пользователя и изменения в базе данных. На основе такой модели можно писать тест-кейсы или чек-листы.
Сейчас чаще используется микросервисная архитектура или акторная модель с асинхронным обменом сообщениями, которые могут теряться или дважды обрабатываться со сложными эффектами. Классической модели приложения уже недостаточно для разработки тестирования приложений - она не дает представления о возникающих проблемах. Необходимы другие модели, адекватные применяемым парадигмам программирования, на основе которых можно прорабатывать сценарии проверки сложных случаев, обеспечивающих устойчивую работу приложения в сложных ситуациях. О таких моделях пойдет речь в докладе.
Месяц назад я рассказывал об этих моделях на AnalystDays, но с фокусом на проектировании системы, а в этом докладе был фокус на тестирование, включая проверку устойчивости системы при сбоях и масштабирование. Слайды - похожи, а слова были другими.
Видео