Junit 使用正确的资源

Junit to use correct resources

在为应用程序编写单元测试时,通常我会创建一些原始配置的副本 main/resources 并出于测试目的修改它们,但我保留名称不变。然而 Junit 有时取 src 中的一个,有时取 test/resources 中的一个。

我们如何在不重命名文件的情况下管理它选择哪一个文件?

例如我有一些 "config.json" 既在测试资源中又在主资源中,junit 如何在 运行 测试时选择选择哪一个...

好的,简单回答一下:

您不能从 src/main/resources 中排除资源。它们总是在您的 class 路径中,因此它们是您的 program/library.

的一部分

但你不应该这样做。

例如,

Log4j2 允许在 class 路径中使用不同名称的配置文件(而 运行 测试)。只需将其命名为 log4j2-test.xml,它将在非测试文件之前加载。

Spring 在用 @ContextConfiguration 注释测试 classes 时表现相同。