postgres数据库的自动化测试

时间:2015-08-10 18:16:02

标签: java database postgresql testing automation

我正在测试这个在postgres中创建数据库/表的api。对于自动化测试,我正在思考,有一个设置方法,创建一个包含表格设置的数据库,并填充所需的数据(1000个条目/行)。

我在考虑这样做的优雅方式?除了编写循环超过1000次的代码并将存储在csv中的数据写入postgres表之外的任何想法?

2 个答案:

答案 0 :(得分:0)

老实说,CSV,XML或任何其他结构化格式对我来说似乎都很好。您想要这样做的原因是什么?使用pg_dump命令从现有数据库导出数据并使用pg_restore也是一个不错的选择。

关于编写代码来生成数据的另一个想法也不错。编写代码的好处是您的测试没有耦合到数据文件。

另外,我会看一下H2数据库,因为它具有PostgreSQL兼容模式,你可以将它实际嵌入到你的单元/集成测试中,而不是依赖于PostgreSQL服务器进行设置和配置在你的测试中。我们使用H2来测试我们的PostgreSQL应用程序,它运行良好。缺点是你不能100%肯定,因为你的测试通过H2反对PostgreSQL。

答案 1 :(得分:0)

如果您真的更喜欢使用postgresql(而不是H2)进行测试,可以使用liquibase。它是一个数据库模式管理工具,支持(以及其他)从csv(http://www.liquibase.org/documentation/changes/load_data.html)批量加载数据。

如果您的应用程序使用它,它还提供spring集成。