Как протестировать функцию, из которой вы не знаете возвращаемых значений в Python - PullRequest
0 голосов
/ 09 марта 2019

У меня есть функция, которая возвращает список значений. Значения животных, которые находятся в магазине.

[dog, cat, horse, ...]

Теперь проблема в том, что я не знаю точных значений внутри списка. Это будет отличаться. Как я могу протестировать эту функцию?

Это то, что у меня сейчас, но я не знаю, как / на каких значениях проверять?

From unittest import TestCase, mock
..

def test_get_in_house_animals(self, ):
    value = self.trade.get_in_house_animals()
    self.assertTrue(value)

Может ли кто-нибудь объяснить мне обычный метод использования фиктивных данных, когда вы не знаете точных возвращаемых значений?

1 Ответ

0 голосов
/ 09 марта 2019

В среде юнит-теста вы высмеиваете все зависимости от вашего юнита. В вашем случае, например, база данных / репозиторий / API / любой экземпляр должен быть смоделирован в вашей среде. В юнит-тестах разрешено тестировать против конкретной реализации контекста вашего юнита / границы. В этом случае источник данных. Вы можете проверить в тесте, если вы позвоните

self.trade.get_in_house_animals()

что конкретная функция, например hasBeenCalled('findAll'), который отвечает за результат в get_in_house_animals.

В вашем случае, смейтесь над httpClient и утверждайте, что ваша api-enpoint "hasBeenCalled". Результат конечной точки находится вне вашего подразделения и не является частью вашего теста.

Надеюсь, что юнит-тестирование стало немного понятнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...