Хорошо, юнит-тестирование - это больше тестирование логики, написанной в вашей функции / контроллере / сервисе.Теперь ваша функция может быть очень простой или очень сложной.Например, ваша функция может принимать и UserId в запросе, подключаться к базе данных, получать данные и возвращать их, и, поскольку вы проверяете соединение с базой данных, вы можете почувствовать, что, если вы передаете макетируемый объект в качестве ответа базы данных, вы, очевидно,получить тот же ответ, так какой смысл тестирования.В этом случае может показаться правильным вообще не проверять.Но позвольте мне привести еще один пример, скажем, у вас есть очень сложная функция, которая берет некоторый UserId, получает данные о банковской истории пользователей за весь год, накапливает их и вычисляет сумму, заработанную пользователем за этот год.Теперь подумайте, насколько сложна эта функция.Теперь, так как вы смоделировали соединение с БД, вы передадите некоторые данные, и внутри будет выполняться много вычислений, которые дают пользователю заработанную сумму в виде Процентов на сохранение.Теперь, для определенных поддельных данных, вы знаете, что ответ должен прийти в виде некоторой X-суммы.Теперь, со временем, кто-то допустил ошибку (возможно, вычел что-то, что нужно было добавить).Теперь, когда вы запускаете тест.Этот тест не пройден, и вы знаете, что с логикой что-то не так.В данном случае вы не ожидаете, что выходные данные будут равны вашим смоделированным данным, по этим данным были проведены некоторые вычисления, поэтому для проверки правильности логики функции после каждого изменения необходимо написать модульный тест для проверки.Теперь, если вы видите здесь, вы не тестируете 1 == 1, а что-то другое.Вот почему люди пишут модульные тесты, чтобы проверить свою логику внутри блока кода.
Надеюсь, это поможет.