Criando bancos de dados em testes SQLAlchemy com PostgreSQL

Estou construindo um aplicativo Web Pyramid que é construído no topo do SQLAlchemy e confia apenas no PostgreSQL como back-end do banco de dados.

O que seria uma maneira de ter a estrutura de testes unitários para que

O banco de dados é construído uma vez por execução de teste - não em todos os testessetUp() como isso é muito lento para um aplicativo complexo

As tabelas do banco de dados são (re) criadas como seriam criadas na produção (por exemplo, executar migrações do Alembic). Quaisquer bancos de dados impuros são destruídos no início da execução do teste.

É possível escolher um corredor de teste personalizado à lapy.test se um recurso específico fora da estrutura unittest da biblioteca padrão facilitar a gravação de casos de teste.

questionAnswers(1)

yourAnswerToTheQuestion