Unit в UnitTest - это unit of work. То есть a use case, вызванный public method-ом и закончившийся result-ом. А result-ом может быть:
- Возвращаемое значение или Exception.
- Заметные изменения в системе. Заметные - значит, система после них работает по-другому. Например, добавление пользователя - это заметное изменение, потому что теперь под ним можно заходить.
- Вызов внешней системы, которую мы не можем контролировать во время теста. Например, файловая система, сеть, user threads, или любая другая зависимость, которую мы не можем контролировать и которая выполняется медленно.
Вроде бы просто. Тем не менее, я понял, что отчего-то был уверен, что UnitTest-у и случая 1 достаточно. Хотя уже созданы обёртки для эмуляции файловой системы. Или вот эксперименты над Python
Комментариев нет:
Отправить комментарий