gpt4 book ai didi

java - 如何测试 DDL 更改

转载 作者:行者123 更新时间:2023-11-29 21:06:36 24 4
gpt4 key购买 nike

我有一个配置应用程序(MySQL 数据库)审核功能的功能。它的作用如下: - 获取所有数据库表结构 - 创建相应的审计表(或修改现有的) - 重新创建主表触发器捕获任何数据更改

现在我正在考虑如何编写这个测试。我创建了修改数据库结构的实时集成测试,运行此审核配置并检查其正确性,但这不是我可以包含在应用程序中的测试(它修改了真实的数据库)。实际上是否可以对此类功能进行单元测试?如果可以,如何进行单元测试?如何模拟并验证DDL变化?

最佳答案

为了完成此任务,我决定测试查询生成(它们的正确性)。我将所有 SQL 语句(静态和动态)提取到单独的方法中,然后使用部分模拟 (Mockito) 来执行这些方法并检查它们是否按预期生成 SQL 语句。这样我就不需要实际运行任何东西,并且仍然有 90% 的覆盖率,这才是真正的目标。关键部分是将所有 SQL 调用与主方法分开以启用部分模拟。

关于java - 如何测试 DDL 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36766128/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com