Rspec, Pepino: melhor estratégia de limpeza de banco de dados de velocidade
Gostaria de aumentar a velocidade dos meus testes.
Devo usaruse_transactional_fixtures
ou vá com odatabase_cleaner
gemaQual estratégia de limpeza de banco de dados é a melhor? Notei que após a migração de:truncation
para:transaction
meus mais de 800 exemplos rodam cerca de 4 vezes mais rápido!Devo desligaruse_transactional_fixtures
quando eu uso database_cleaner:transaction
? É verdade que a melhor estratégia para rack_test é:transaction
?Quais são as práticas recomendadas para alterar a estratégia rapidamente de:transaction
para:truncation
ao usar selênio ou akephalos?P.S. Mysql, Rails 3, Rspec2, Pepino
P.P.S. Eu sei sobre spork e parallel_test e usá-los. Mas eles são offtopic. Por exemplo, o Spork economiza de 15 a 20 segundos em toda a suíte, mas muda de:transaction
para:truncation
aumentar drasticamente o tempo de execução de 3,5 para 13,5 minutos (diferença de 10 minutos