Существует два стандартных подхода к тесту, которые зависят от чего-то еще (объект, вызов функции и т. Д.).
- Вы можете использовать mocks вместо объектов, от которых зависит тестируемый код.
- Вы можете загрузить прибор или выполнить создание / вызов в настройках теста.
Некоторым людям нравятся «классические» модульные тесты, в которых тестируется только «единица» кода. В этих случаях вы обычно используете макеты и заглушки для замены зависимостей.
Другие, например, более интегрированные тесты, в которых тестируется большая часть или весь стек вызовов. В этих случаях вы используете прибор или, возможно, даже делаете вызовы / создания в функции настройки.
Как правило, вы бы не сделали бы один тест зависимым от другого. Все тесты должны:
- убирать за собой
- может работать в изоляции
- может быть запущен как часть набора
- быть последовательным и повторяемым
Если вы сделаете один тест зависимым от другого, он не сможет выполняться изолированно, и вы также навязываете порядок выполнения тестов. Обеспечение порядка в тестах не является хорошим, на самом деле многие считают, что вы должны рандомизировать порядок, в котором выполняются ваши тесты.