юнит тестирование fork

19
Юнит тестирование Прукс Александр [email protected]

Upload: sergey-oreshkov

Post on 20-Jul-2015

81 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: юнит тестирование Fork

Юнит тестированиеПрукс Александр

[email protected]

Page 2: юнит тестирование Fork

Обо мне

• Тимлид в СТ

• 10 лет разработки с применением ЮТ

• .Net/JavaScript

Page 3: юнит тестирование Fork

Для кого

• Менеджменту: как и зачем внедрять, с кого требовать

• Тестировщикам: как отмазаться

• Разработчикам: для расширения кругозора

Page 4: юнит тестирование Fork

Структура

• Определения

• Отличие от других методик

• Вопросы/ответы

Page 5: юнит тестирование Fork

Что это?

• процесс в программировании, позволяющий проверить на корректность отдельные модули (юниты) исходного кода программы

Page 6: юнит тестирование Fork

Анатомия ЮТ

• Юнит – минимальная, неделимая часть кода

• Тест – программный код

• начальное состояния

• вызов юнита в изоляции

• проверка

• Тест фреймворк – набор библиотек, облегчающих написание теста.

Page 7: юнит тестирование Fork

Изолированность?!

• На результат теста не влияют внешние модули

• В тестах: подменяем зависимости на заглушки

Page 8: юнит тестирование Fork
Page 9: юнит тестирование Fork

Зачем?

• Быстро

• Предсказуемо

• Легко

Page 10: юнит тестирование Fork
Page 11: юнит тестирование Fork

Профит?

• Не боимся менять код

• Меньше алгоритмических ошибок

• Если падает, то точно знаем где

Page 12: юнит тестирование Fork

Методика

• Пишут/используют ВСЕ разработчики

• Только свой код

• Обязательно CI

• Метрики?

• Скорость

• Покрытие

Page 13: юнит тестирование Fork
Page 14: юнит тестирование Fork

Unit vs *

+ Мгновенный фидбек

+ Точность

+/- Близость к коду

- Порог вхождения

Page 15: юнит тестирование Fork
Page 16: юнит тестирование Fork

Итог

• Предсказуемая разработка

• Пороги вхождения:

• Квалификация разработчиков

• Менеджмент

• Говнокод

Page 17: юнит тестирование Fork

Порог №1

Page 18: юнит тестирование Fork

Check list

• Хотите попробовать?

• А вам разрешат?

• Владеете кодом?

• Проект с нуля?

• Как с DI/SOLID/GoF?

Page 19: юнит тестирование Fork

Вопросы и ответы

[email protected]