Rspec, Pepino: mejor estrategia de limpieza de bases de datos de velocidad
Me gustaría aumentar la velocidad de mis pruebas.
¿Debo usaruse_transactional_fixtures
o ve con eldatabase_cleaner
gema @ ¿Qué estrategia de database_cleaner es la mejor? Noté que después de la migración desde:truncation
a:transaction
¡mis más de 800 ejemplos se ejecutan aproximadamente 4 veces más rápido! ¿Debo apagaruse_transactional_fixtures
cuando uso database_cleaner:transaction
?Es cierto que la mejor estrategia para rack_test es:transaction
?Cuáles son las mejores prácticas para cambiar la estrategia sobre la marcha desde:transaction
a:truncation
cuando se usa selenio o akephalos?PD. Mysql, Rails 3, Rspec2, Pepino
P.P.S. Se acerca de spork y parallel_test y usándolos. Pero son offtopic. Por ejemplo, Spork ahorra unos 15-20 segundos en toda la ejecución de la suite, pero cambia de:transaction
a:truncation
aumenta drásticamente el tiempo de ejecución de 3.5 a 13.5 minutos (10 minutos de diferencia).