2015-09-20 5 views
1

Я работаю над личным проектом с использованием python. В настоящее время я использую нос для модульного тестирования и есть файл python для хранения всех настроек, таких как пути файлов, конфигурация db и т. Д.python: настройка различных конфигурационных файлов для модульного тестирования

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

Я думаю, что хорошим способом я могу создать несколько этапов, но поскольку я использую чистый python без использования каких-либо фреймворков, таких как Django, поэтому я не уверен, как это сделать.

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

+0

Ваш заголовок немного вводит в заблуждение. Возможно, вы должны сделать что-то вроде «использования разных конфигураций для модульных тестов». Кроме того, переформатирование вашего блока текста с помощью некоторых практических примеров поможет упростить понимание того, что вы ищете. – idjaw

ответ

1

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

Для начала я настоятельно рекомендую рассмотреть эти два модуля. Я использую их все время для тестирования модулей.

Mock & flexmock

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

Stackoverflow - with

С насмешками, что вы можете сделать в этом случае просто издеваюсь, где вы изначально импортировать настройки и использовать ваш Unit- тестовую версию для настроек.

Кроме того, вы также можете взглянуть на светильники, которые помогут предварительно установить некоторые объекты данных для вас, и вы можете проверить, соответственно: Fixtures

Смежные вопросы