Подготовка тестовой базы данных
Как я могу настроить базу данных для тестирования с моими собственными записями, когда я начну выполнять тесты, затем работать над ней и повторять процесс при каждом действии запуска модульных тестов?
Я имею в виду, где база данных должна быть? Должен ли я создать какую-то отдельную физическую базу данных или добавить в нее существующие тестовые записи из кода? Как я могу это сделать?
Спасибо!
1 ответ
Для тестирования есть отдельный файл конфигурации. Вы можете найти это как config_test.yml
, В этом конфиге вы можете настроить тестовую базу данных, которая будет использоваться только для тестирования. Поэтому вы должны использовать совершенно отдельную базу данных.
Следующим шагом является создание некоторых начальных данных. Для этого вы можете использовать пакет DataFixtures. Дальнейшее чтение: Symfony DataFixtures
Теперь у вас есть ваши начальные данные. Последний шаг - очистка тестовой базы данных при каждом запуске набора тестов. Я нашел довольно хорошую статью об этом здесь: Очистка вашей тестовой базы данных в PHPUnit
Поэтому я считаю, что это лучшая практика для функционального тестирования.