java - Dropwizard 中的数据库设置单元测试
问题描述
我有一个 Dropwizard 应用程序,我正在尝试创建单元测试来测试应用程序。
我阅读了一堆资源,现在我正在使用 DropwizardTestRule 启动应用程序并运行一些单元测试。我还有一个自定义的 config-test.yml,用于将应用程序指向我的本地数据库以运行查询。
而我们使用的 Dropwizard 版本是 0.9.2。不幸的是,这是目前无法改变的约束。
我遇到的问题是在测试套件运行之前在数据库上运行迁移。
问题是:
mvn package
作为打包任务的一部分运行单元测试。- 单元测试需要将迁移作为先决条件运行。
- 运行迁移需要创建的 jar
mvn package
作为先决条件。
这对我来说似乎是一种循环依赖,只能通过第一次调用来解决,mvn package -DskipTests=true
这会导致jar
创建。然后运行迁移。然后将测试作为单独的 Maven 任务运行。
这意味着我的构建现在必须是命令脚本。有没有更好的方法来做到这一点?或者这是唯一的黑客?
我如何告诉 Dropwizard 在运行测试套件之前运行迁移?
解决方案
推荐阅读
- c# - Apache Ignite 如何支持分区?
- c# - 无法识别的元素“删除”web.config
- java - 使用 JAVA 下载 CSV 文件
- javascript - 使用 chartjs 为特定数据集创建填充线性图表
- javascript - 在此查询中,我需要添加什么使其永远不会显示空白或空值?
- python - Python 3 Regex TypeError:预期的字符串或类似字节的对象
- angular - 输入字段中的图标重叠
- dependency-injection - 统一注册具有多个生命周期的服务
- javascript - 如何使用 qliksense 在 javascript 中使用“require”?
- python - 除了不好的命名约定之外,使用数据类型名称(例如:datetime、str、int)之类的变量名称有什么害处?