Обезьяна-патч встроенная функция для юнит-теста? - PullRequest
7 голосов
/ 16 февраля 2012

Я не хочу создавать реальные файлы в моем unittest.Поэтому я часто возился с бессмысленным образцом и создаю фиктивные фабрики для псевдофайлов.Мне было интересно, не будет ли лучше (в данном случае) избегать этих бессмысленных попыток и попробовать что-то наподобие локального метода юнит-теста:

open = lambda x: StringIO()

Это будет нормально?Или в этом подходе есть серьезные предостережения / не проблема, и лучше справляться с фальшивыми фабриками?

1 Ответ

6 голосов
/ 16 февраля 2012

Это хорошо, если вы понимаете, как работают области действия Python (то есть локально это хорошо, глобально вызовет проблемы).

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

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