При запуске кода, как правило, проводится несколько видов тестирования:
- Модульное тестирование: Проверка работоспособности мельчайших изолированных частей программы (функций, методов, классов). Цель - убедиться, что каждый модуль ведет себя так, как ожидается.
- Интеграционное тестирование: Проверка взаимодействия между отдельными модулями или компонентами системы. Цель - выявить проблемы, возникающие при их совместной работе.
- Дымовое тестирование (Smoke testing): Первоначальное быстрое тестирование основных и самых критичных функций приложения после сборки или развертывания. Цель - убедиться, что приложение "не дымится" и основные функции работают.
- Регрессионное тестирование: Проверка того, что изменения, внесенные в код, не привели к появлению новых ошибок или повторному проявлению старых в уже работающих частях системы.
- Тестирование производительности (Performance testing): Оценка скорости, масштабируемости и стабильности приложения под различными нагрузками.
Выбор конкретных видов тестирования при каждом запуске зависит от этапа разработки (например, при локальном запуске разработчик может ограничиться модульными тестами, а на сборочном сервере уже запускаются интеграционные и дымовые тесты), используемого CI/CD пайплайна и специфики проекта.