如何准备在内存替换中使用PostgreSQL的集成测试?
我了解到在集成测试中使用实际数据库可以显着减慢它们的速度.因此,我必须使用内存数据库,这可能会显着提高我的集成测试的速度.
我正在使用Springboot进行应用程序开发.如何配置PostgreSQL用于测试目的?内存数据库中是否有与PostgreSQL语法高度兼容的数据库? 如果没有,我应该如何进行集成测试. 解决方法
我对真实postgres的一些db测试每次需要10ms.我在每个测试中做了多次提交.所以:
要覆盖postgres-native功能,您需要相同的db(如您所见,h2和其他内存中的db不是很兼容). postgres没有内存模式. 所以获得真正的postgres并正确设置其生命周期.有一些工具可以帮助您解决一些问题: > testcontainers将帮助您提供 缺点: >创建和维护架构和数据需要做很多工作.特别是当您的项目处于密集开发阶段时. > testegration – 旨在为您提供完整,随时可用和可扩展的生命周期(披露:我是创建者). 缺点: >仅限小型项目 另一个步骤是在操作系统级别将db移动到内存.再次,第一次启动时间将类似,因为所有需要加载.一些起点here和here 缺点: >团队中的每个开发人员都必须修改他的本地环境>操作系统之间不可移植(如果您的团队有异构环境) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |