Обычно вы добавляете все необходимые шаги в setUp и все шаги по очистке в tearDown.
Вы можете прочитать больше с примерами здесь .
Когда определен метод setUp (), средство выполнения тестов будет запускать этот метод перед каждым тестом. Аналогичным образом, если определен метод tearDown (), средство выполнения тестов будет вызывать этот метод после каждого теста.
Например, у вас есть тест, который требует наличия элементов или определенного состояния, поэтому вы помещаете эти действия (создание экземпляров объектов, инициализацию базы данных, подготовку правил и т. Д.) В setUp.
Также, как вы знаете, каждый тест должен останавливаться в том месте, где он был запущен - это означает, что мы должны восстановить состояние приложения до его исходного состояния - например, закрыть файлы, соединения, удалить вновь созданные элементы, вызвать обратный вызов транзакций и так далее - все это шаги должны быть включены в tearDown.
Таким образом, идея состоит в том, что сам тест должен содержать только те действия, которые должны быть выполнены с объектом тестирования для получения результата, а методы setUp и tearDown помогут вам оставить код теста чистым и гибким.
Вы можете создать setUp и tearDown для группы тестов и определить их в родительском классе, чтобы вам было легко поддерживать такие тесты и обновлять общие приготовления и очистку.
Если вы ищете простой пример, воспользуйтесь следующей ссылкой с примером
Предположим, у вас есть набор из 10 тестов. 8 тестов используют один и тот же код установки / удаления. Остальные двое - нет.
setup и teardown дают вам хороший способ рефакторинга этих 8 тестов. Что вы будете делать с двумя другими тестами? Вы бы переместили их в другой тестовый набор / набор. Таким образом, использование настройки и разборки также помогает естественным образом разбивать тесты на кейсы / наборы.
источник