gradle 中测试依赖的 api 等价物?

pix*_*xel 7 dependency-management gradle

我有一个多模块 gradle 项目。在我的一个模块中,我有 api 依赖项:

api('de.flapdoodle.embed:de.flapdoodle.embed.mongo')
Run Code Online (Sandbox Code Playgroud)

我想将其更改为在所有模块中都可以在测试中看到的依赖项。有一个testImplementation依赖,但没有testApi

我不能再依赖于生产类路径,因为我想使用真正的 mongo 实例而不是嵌入式实例。另一方面,我在依赖于数据访问的不同模块中进行了测试 - 在这种情况下,我想在测试类路径上使用嵌入式 mongo 运行这些测试。

如何在所有模块测试中显示此依赖项?

ToY*_*nos -2

分级任务

testCompileClassPath包含api依赖项,因此您在这里一切都很好,de.flapdoodle.embed.mongo将在您的测试中可见。

  • “testApi”将是无稽之谈,因为按照设计,测试并不意味着公开。因此,只需使用“testImplementation”,我猜,“de.flapdoodle.embed.mongo”将不再出现在生产类路径上。 (2认同)