Есть проект на Yii. Пытаюсь наладить модульные тесты. Но встал вопрос, как сбрасывать базу к исходному состоянию?
Пробовал фикстуры - не подходят т.к. есть много выборок из 5-8 связанных таблиц. Поэтому было бы проще иметь готовый дамп базы и работать с ним.
Скажите, будет ли нормально, есть в init сценарии описать всю базу (скорее всего импорт из sql файла), а потом на этой копии производить все тесты? При этом каждый тест оборачивать в транзакцию, чтобы он ничего не поменял?
В правильном ли направлении я мыслю? Или надо делать как-то по-другому?
Пробовал фикстуры - не подходят т.к. есть много выбороко из 5-8 связанных таблиц.
Странно, нам фикстуры подходят и для бОльшего числа таблиц и выборок. Самое сложное было сначала их спроектировать и аккуратно описать, зато потом они прекрасно служат своим целям и мы о них даже и не задумываемся почти.