如何在 SureFire 测试阶段之前和之后执行脚本

How to execute scripts before and after SureFire test phase

当我调用 mvm test 时,我想在调用 Surefire JUnit 之前执行一个 setup.sql 脚本,然后在之后执行一个 teardown.sql 脚本。

我从 questions like this 知道如何在测试阶段执行脚本,但我不知道如何定义这个特定的事件序列。谢谢!

不是用 surefire 插件,而是用它的兄弟 failsafe 插件。它们都执行测试,但处于不同的生命周期阶段。 test 中的 surefire 插件和 integration-test 中的 failsafe 插件。参见 life-cycle phases and the default plugin bindings

故障保护插件 运行 在集成测试阶段的优点是有前期和 post- 阶段。

既然你提到了一些 sql 脚本,你似乎想准备一个数据库。到那时,您实际上不再是在进行单元测试,而是在编写集成测试。所以在这里使用故障保护插件最有意义。