我想测试一个对Postgres DB执行查询的后端。据我所知,模仿postgres是不可能的(与MongoDB相反),应该查询一个真正的数据库。
所以我的第一个问题是,测试postgres查询的标准策略是什么?
现在,我正在尝试重新创建一个没有数据的数据库,这样我就可以为每个测试插入信息,并完全控制输出。然而,目前还不清楚如何做到这一点。到目前为止,我已经想出了一些类似的东西:
pg_dump mydb --schema-only | pg_restore testdb然而,它真的很慢。我认为其中一个原因是,如果测试客户端与数据库不在同一网络中,那么pg_dump将不得不通过网络获取所有信息,然后将其发送回同一台机器。
我想我要找的东西应该类似于
Create new database testdb with template mydb 它只复制了模式信息,并没有强制关闭所有连接。
发布于 2016-09-19 16:49:37
我认为你关于模板数据库的想法是最好的。
为什么不创建一个与mydb相同的模板数据库,只是没有数据?如果您的问题是mydb经历了频繁的模式更改,请使用一种将所有模式更改同时应用于mydb和模板数据库的部署技术。
https://stackoverflow.com/questions/39568389
复制相似问题