通常我使用hsqldb进行一些集成测试,它工作得很好。但是一些测试需要有一个postgresql示例。因为我们的生产服务器运行postgresql,所以对生产数据库运行测试是一个好主意。有没有一个maven插件或类似的东西可以很容易地在给定的端口上安装和启动postgresql数据库,并在所有测试运行后关闭它?mysql的mysql-je
4c8rllxm1#
我什么都不知道,但你可能不想启动和停止实际的PostgreSQL服务器;您希望服务器一直运行,并根据需要创建和销毁数据库。您可以create a database in SQL,也可以destroy it。如果您设置了一个空的初始数据库,并且不用于存储任何数据,则可以使用以下工作流:1.连接到空数据库1.发出命令以创建新数据库1.对新数据库运行测试1.发出删除新数据库的命令
bgibtngc2#
Testcontainers就是答案。易于配置,只是做它的工作。对于PostgreSQL,他们有一个模块:https://www.testcontainers.org/modules/databases/postgres/通过这种方式,您的测试系统尽可能接近生产系统,我认为这是一个非常好的主意。
2条答案
按热度按时间4c8rllxm1#
我什么都不知道,但你可能不想启动和停止实际的PostgreSQL服务器;您希望服务器一直运行,并根据需要创建和销毁数据库。
您可以create a database in SQL,也可以destroy it。如果您设置了一个空的初始数据库,并且不用于存储任何数据,则可以使用以下工作流:
1.连接到空数据库
1.发出命令以创建新数据库
1.对新数据库运行测试
1.发出删除新数据库的命令
bgibtngc2#
Testcontainers就是答案。易于配置,只是做它的工作。对于PostgreSQL,他们有一个模块:
https://www.testcontainers.org/modules/databases/postgres/
通过这种方式,您的测试系统尽可能接近生产系统,我认为这是一个非常好的主意。