Sobes.tech
Back to questions
Junior — Middle
71

Объясните, что такое Mock объекты в контексте автоматизированного тестирования?

Answer from AI

sobes.tech AI

Mock объекты — это специальные объекты, используемые в автоматизированном тестировании для имитации поведения реальных компонентов или зависимостей. Они позволяют изолировать тестируемый код от внешних систем, контролировать входные данные и проверять взаимодействия.

Например, если функция зависит от вызова внешнего API, вместо реального вызова можно использовать Mock, который возвращает заранее заданный ответ, что ускоряет тесты и делает их более надежными.

Пример на Python с использованием unittest.mock:

from unittest.mock import Mock

def get_user_name(user_service, user_id):
    return user_service.get_name(user_id)

mock_service = Mock()
mock_service.get_name.return_value = 'Иван'

assert get_user_name(mock_service, 123) == 'Иван'