Escribí una publicación detallada sobre esto hace algún tiempo:
Optimizar PostgreSQL para pruebas rápidas
Puede encontrarlo informativo; cubre opciones para hacer que PostgreSQL se ejecute sin durabilidad y otros ajustes que son útiles para ejecutar pruebas.
En realidad, no necesita una operación en memoria. Si PostgreSQL está configurado para no vaciar los cambios en el disco, en la práctica habrá poca diferencia para las bases de datos que caben en la RAM y para las bases de datos que no caben en la RAM, no fallará.
Debe probar con el mismo motor de base de datos que está utilizando en producción. Probar con SQLite, Derby, H2, etc. y luego implementar en vivo en PostgreSQL no tiene mucho sentido... como cualquier usuario de Heroku/Rails puede decirle por experiencia.