2011-03-14 29 views
19

En mis proyectos Django utilizo la base de datos sqlite para ejecutar pruebas. Como usa solo memoria, es mucho más rápido que MySQL, pero aún no es lo suficientemente rápido. Durante las pruebas, solo se utiliza uno de los 4 procesadores, y no se consume mucha memoria. Entonces, me gustaría tener 4 bases de datos sqlite en memoria para ejecutar 4 pruebas en paralelo.¿Cómo ejecutar pruebas en paralelo en Django?

¿Alguien ha intentado esto?

Respuesta

-2

Usted puede fácilmente dividir la prueba para aplicaciones en parrallalel en Linux por:

$ python manage.py test cms & \ 
python manage.py test blog & \ 
python manage.py test store & \ 
python manage.py test registration 
$ 

Podría ser atento para grandes proyectos con una gran cantidad de aplicaciones, lo mejor sería un scripts bash que realiza pruebas cada cuatro aplicaciones .

+2

no funciona. Las pruebas en el fondo se comportan de manera extraña, algunas de ellas se detienen para funcionar. Además, incluso si funcionan, la salida está codificada (no es un gran problema). Finalmente, la mayoría de las aplicaciones finalizan rápido, mientras que solo dos procesadores terminan procesando dos aplicaciones pesadas ... – lfagundes

+0

Me extraña que las pruebas en segundo plano se comporten de forma extraña, ¿tiene más datos sobre ese problema? Veo que lo que quiere de alguna manera es distribuir la prueba de carga por prueba ... interesante, desafortunadamente no tengo una idea clara de cómo resolver su necesidad. Mantenga esta pregunta actualizada si encuentra algo interesante que hacer. –

+0

Podría intentar usar libs de procesamiento de Python para ejecutar las pruebas en paralelo y capturar el resultado. Además, es probable que desee utilizar un db sqlite por separado para cada uno (defínalo por --settings) para evitar el negocio de monos descrito anteriormente. –

Cuestiones relacionadas