tdd from the middle
DESCRIPTION
TRANSCRIPT
Запускаем TDD с середины проекта
2
Павел Габриель
Минск, Беларусьруководитель проектов, программист
«Смарт системз»
Вопросы
О чем пойдет речь?
о проблемах и
возможных решениях
Компания
Команда
Код
С чего начать?
Стоит ли внедрять?
Возможно НЕТ, если
Проблемы с командой
Детальное проектирование
Нет изменений
Через неделю релиз
Один джедай
Один джедай
и это вы ;)
Мифы и реальность
Мифы
Полное отсутствие багов
Все должно быть протестировано
Многократное увеличение объема кода
Время разработки значительно увеличится
15-20%на новом проекте
Качественный код по TDD может написать любой
Можно отказаться от тестировщиков
Реальность
Более качественный код
Меньшая связанность
Узкая специализация
Хорошие интерфейсы
Легкая интеграция
Уменьшение времени отладки
Легкие миграции
Частые релизы
Условия для TDD
Вера в разработчиков
Возможность принимать решения
Команда
Причины отказа
Это не моя работа
TDD - это тестирование
TDD - это тестированиепроектирование
TDD - это тестированиепроектированиеулучшение кода
Я не знаю зачем писать тесты
Доверие
Код
Коллеги
Клиенты
Смелость и уверенность
Мой мозг может больше
Нет времени
Это невозможно протестировать
Проще написать код, чем тест
Мой код работает и так!
на моем компьютере ;)
Доносим суть TDD
Кент Бек "Разработка через тестирование"
Тренер/опытный лидер
Учебный проект
Итого
Понимаем
Хотим
Учимся писать тесты
Код
С чем боремся?
Дублирование
Сложность
Зависимость
Тестовая среда
Независимая
Легко воспроизводимая
Максимально реальная
Автоматическиефункциональные
тесты для ядра
Пишем по TDD
Новый код
Модифицируемый старый код
Найденные баги
Метрики
Правильные инструменты
Спасибо за внимание!
Вопросы?