您可以将所有测试分离到另一个项目中,并将主项目添加为依赖项(项目->属性->Java 构建路径->Projects->Add...)
更新:为了避免更改原始项目结构,您的测试项目可以使用链接位置。
正常创建测试项目,现在需要创建链接资源以引入 src/test/java 文件夹。最好使用变量创建它,以便您的项目可以保留一定的平台独立性。
要创建新的链接文件夹,请选择New->Folder, input src in the 文件夹名称:字段,然后单击进阶>>
Click 链接到文件系统中的文件夹点击变量...提出选择路径变量对话。
如果这是您第一次,或者您要链接到新位置,请选择New...并为变量指定一个合理的名称和路径。如果您的所有项目都位于c:\workspaces\foo** 调用变量 **WORKSPACE_ROOT 是有意义的并给它这条路径。如果您有其他约定也可以,但在 .project 文件中添加注释是有意义的,这样别人就有机会找出正确的值应该是什么。
假设上面的值,您现在可以设置一个值WORKSPACE_ROOT/[主题项目名称]/src在输入字段上
一旦你确认你应该看到带有小箭头的 src 文件夹,如果你查看 .project 文件,你会看到类似这样的内容:
<linkedResources>
<link>
<name>src</name>
<type>2</type>
<locationURI>WORKSPACE_ROOT/esf-ns-core-rp/src</locationURI>
</link><!--NOTE the WORKSPACE_ROOT variable points to the folder containing the subject project's sandbox-->
</linkedResources>
您现在可以像平常一样添加 src/test/java 文件夹作为源位置。
请注意,您还可以通过将配置更改为以下内容来仅共享 src/test/java 文件夹:
<linkedResources>
<link>
<name>src/test/java</name>
<type>2</type>
<locationURI>WORKSPACE_ROOT/my-project/src/test/java</locationURI>
</link>
</linkedResources>
这可以更好地控制配置,但您必须对 src/test/resources、src/it/java 等重复。
然后,您仅在测试项目中设置所有测试依赖项。
非常不漂亮,但它确实有效(我也曾在我的测试合规性级别与主要合规性级别不同的情况下使用过它,例如,测试为 1.5,但目标环境为 1.4)。