在测试Postgress和PHP后设置和清理数据库



我正在为API创建测试。我想设置DB并为每个测试清理它。问题是,我的数据库是非常复杂和大,所以我想知道是否有一种方法来做一个完整的设置和清理整个测试数据库,这不是太重。谢谢你的推荐。如果你需要更多的细节,请告诉我。如果这有帮助,我将使用phpunit进行测试,并使用symphony作为框架。

使用模板数据库非常简单。
您创建并填充您想要的测试数据库,让我们称它为test_template
然后确保没有人可以连接:

ALTER DATABASE test_template ALLOW_CONNECTIONS false IS_TEMPLATE true;
然后用 创建测试数据库
CREATE DATABASE test123 TEMPLATE test_template;

要进行清理,只需删除数据库。您必须确保当您放弃它时没有人连接,使用pg_terminate_backend函数杀死任何剩余的连接。

最新更新