Модульное тестирование является ключевым аспектом обеспечения качества кода приложения и играет ключевую роль для поддержания этого качества в будущем. В рамках курса рассматриваются базовые техники написания тестов, такие как принцип AAA – Arrange, Act, Assert, связь модульных тестов и качественного дизайна приложения, рассматривается методика разработки через тестирование (TDD – Test-Driven Development), полезные изоляционные фреймворки, такие как Moq. Рассматриваются техники адаптации модульного тестирования в организации, подходы работы с унаследованным кодом (legacy code), техники Continuous Testing и другое.
Программа:
Модуль 1
- Модульные тесты – что такое, как их едят и чем они полезны;
- Базовые и некоторые углубленные техники написания тестов;
- Дизайн приложения и модульное тестирование, best practices.
Модуль 2
- Дизайн для тестирования;
- Фреймворки (IOC, Isolation etc.);
- Тестовые паттерны;
- TDD – что такое и чем полезно;
- Как работать с «legacy» кодом в контексте UT;
- Continuous testing;
- Покрытие кода.