Мои модульные тесты Django выполняются долго, поэтому я ищу способы ускорить это. Я подумываю об установке SSD , но знаю, что у него есть и недостатки. Конечно, со своим кодом я могу кое-что сделать, но я ищу структурное исправление. Даже запуск одного теста выполняется медленно, поскольку базу данных необходимо каждый раз перестраивать / переносить на юг. Итак, вот моя идея ...
Поскольку я знаю, что тестовая база данных всегда будет довольно маленькой, почему я не могу просто настроить систему, чтобы всегда хранить всю тестовую базу данных в ОЗУ? Ни в коем случае не трогайте диск. Как мне настроить это в Django? Я бы предпочел продолжать использовать MySQL, поскольку это то, что я использую в производстве, но если SQLite 3 или что-то еще упрощает это, я бы пошел по этому пути.
Есть ли у SQLite или MySQL возможность работать полностью в памяти? Должна быть возможность настроить RAM-диск, а затем настроить тестовую базу данных для хранения своих данных там, но я не уверен, как указать Django / MySQL использовать другой каталог данных для определенной базы данных, тем более, что он продолжает стираться и воссоздавал каждый прогон. (Я использую Mac FWIW.)