I test delle mie unità Django richiedono molto tempo per essere eseguiti, quindi sto cercando dei modi per accelerarlo. Sto pensando di installare un SSD , ma so che ha anche i suoi lati negativi. Certo, ci sono cose che potrei fare con il mio codice, ma sto cercando una soluzione strutturale. Anche l'esecuzione di un singolo test è lenta poiché il database deve essere ricostruito / migrato a sud ogni volta. Quindi ecco la mia idea ...
Dal momento che so che il database di test sarà sempre piuttosto piccolo, perché non posso semplicemente configurare il sistema per mantenere sempre l'intero database di test nella RAM? Non toccare mai il disco. Come posso configurarlo in Django? Preferirei continuare a usare MySQL poiché è quello che uso in produzione, ma se SQLite 3 o qualcos'altro lo rendono semplice, farei così.
SQLite o MySQL hanno un'opzione per funzionare interamente in memoria? Dovrebbe essere possibile configurare un disco RAM e quindi configurare il database di prova per archiviare i suoi dati lì, ma non sono sicuro di come dire a Django / MySQL di utilizzare una directory di dati diversa per un determinato database, soprattutto perché continua a essere cancellato e ricreato ogni corsa. (Sono su un Mac FWIW.)