【发布时间】:2021-02-09 00:49:27
【问题描述】:
什么是配置 Gradle 的简单(但现代的最佳实践)方法,以便它允许我运行类似于默认 Maven Failsafe configuration 的工作方式的集成测试?我已经阅读了Gradle docs for tests——尤其是Gradle docs for integration tests——但它们看起来相当复杂(与 Maven Failsafe 相比),而且我不相信这些示例的工作方式相同。
我正在寻找的内容非常简单:
- 会有一些单独的任务——为了便于讨论,我们称之为
integrationTest。 - 当我调用
gradle test时,integrationTest任务将不运行。 -
integrationTest任务会在我调用gradle integrationTest时运行(在test任务之后)。 - 当我调用
gradle check时,integrationTest任务将运行(在test任务之后)。 -
integrationTest任务将具有与test任务相同的依赖项和类路径配置。 -
integrationTest任务将使用与test任务相同的源路径(即src/test/java),但只会运行以*IT结尾的测试(只是为了简化本次讨论的default Failsafe inclusion pattern)。 -
test任务将忽略所有以*IT结尾的测试。
这实际上是一个非常简单的用例。 (我只是详细介绍了,所以不会有歧义。)我可以turn that on in Failsafe 用两行表示目标,用三行表示依赖。由于 Gradle 将 XML 冗长排除在等式之外,我应该能够在两行中进行配置,对吧?
明确一点,我不想在 Gradle 中使用 Maven Failsafe。我只是想将 Gradle 配置为与默认的 Failsafe 配置类似的行为方式,正如我在上面详述的那样。
【问题讨论】:
标签: java maven gradle integration-testing