Moje testy jednostkowe Django trwają długo, więc szukam sposobów, aby to przyspieszyć. Rozważam zainstalowanie dysku SSD , ale wiem, że ma to też swoje wady. Oczywiście są rzeczy, które mógłbym zrobić z moim kodem, ale szukam poprawki strukturalnej. Nawet wykonanie pojedynczego testu jest powolne, ponieważ za każdym razem należy odbudować bazę danych / migrować na południe. Oto mój pomysł ...
Ponieważ wiem, że testowa baza danych zawsze będzie dość mała, dlaczego nie mogę po prostu skonfigurować systemu tak, aby zawsze przechowywać całą testową bazę danych w pamięci RAM? Nigdy nie dotykaj dysku. Jak to skonfigurować w Django? Wolałbym nadal używać MySQL, ponieważ tego właśnie używam w produkcji, ale jeśli SQLite 3 lub coś innego ułatwi to, pójdę w ten sposób.
Czy SQLite lub MySQL mają opcję uruchamiania w całości w pamięci? Powinno być możliwe skonfigurowanie dysku RAM, a następnie skonfigurowanie testowej bazy danych tak, aby przechowywała tam swoje dane, ale nie jestem pewien, jak powiedzieć Django / MySQL, aby używał innego katalogu danych dla określonej bazy danych, zwłaszcza że jest ona ciągle wymazywana i odtwarzałem każdy bieg. (Jestem na komputerze Mac FWIW.)