后端postgres的测试策略

时间:2016-09-19 08:19:13

标签: postgresql testing

我想测试一个后台,它在Postgres DB中再次执行查询。据我所知,模拟postgres是不可能的(与MongoDB相对),人们应该查询真实的数据库。

所以我的第一个问题是,测试postgres查询的标准策略是什么?

现在,我正在尝试重新创建一个没有数据的数据库,以便我可以插入每个测试的信息并完全控制输出。但是,目前尚不清楚如何做到这一点。到目前为止,我已经想出了类似的东西:

pg_dump mydb --schema-only | pg_restore testdb

然而它真的很慢。我想其中一个原因是,如果测试客户端与数据库不在同一个网络中,那么pg_dump将不得不通过网络获取所有信息,只是将其发送回同一台机器。

我想我正在寻找的东西与

类似
Create new database testdb with template mydb 

仅复制了架构信息,并且没有强制关闭所有连接。

1 个答案:

答案 0 :(得分:1)

我认为你对模板数据库的想法是最好的。

为什么不创建与mydb相同的模板数据库,只有没有数据?如果您的问题是mydb经常发生架构更改,请使用将所有架构更改应用于mydb和模板数据库的部署技术。