8. Модульные тесты – тесты в которых мы тестируем
самые элементарные единицы поведения
системы.
9. Почему именно модульные тесты?
1. Быстро выполняються
2. Помогают обнаружить и локализовать ошибки.
10. Модульный тест который выполняется дольше
1/10 секунды – медленный блочный тест
Модульный тест должен выполняться быстро. В
противном случае это не модульный тест.
11. Модульные тесты не должны
● Обращаться к базе данных
● Общаться по сети
● Обращаться к файловой системе
12.
13. Зависимости
● От классов
● От глобальных переменных
● От сторонних сервисов
● От операционной системы
● От стороннего софта
● От глобальных функций
● От дня недели
и т.д.
14. Причины для разрыва зависимостей
Разделение - если мы не можем ввести в среду
тестирования фрагмент кода для выполнения
Распознавание - если мы не можем получить доступ
к значениям которые вычисляет код
15. Алгоритм изменения унаследованного кода
1. Определение точек изменения
2. Нахождение тестовых точек
3. Разрывание зависимостей
4. Написание тестов
5. Внесение изменений и реорганизация кода
16.
17.
18.
19.
20.
21. Швы
Шов - место где можно изменить поведение
программы, не правя код в этом месте
Разрешающая точка - место где можно выбрать то
или иное поведение.