IntelliJ – 如何从“运行”视图中的失败unit testing跳转到源而不是编译类

当我在IntelliJ中运行我的JUnit测试并且其中一个失败时,我想通过双击它来跳转到失败测试的源代码(或者右键单击它并选择“Jump to source”或“Show source” “)在结果视图中(在”运行“视图中的失败测试列表中)。 但是,此function并不总是正常工作。 有时会显示源代码,有时在编辑器窗口中只显示测试的已编译“.class”文件。 在双击失败的测试后,我总是希望在编辑器窗口中看到源代码(“.java”文件)而不是“.class”文件。 其中一个解决方案是在编辑器窗口中单击“Attach Sources …”,其中显示测试类的“.class”文件。 但是,我必须为每个测试文件执行此操作,并且每次测试都需要花费很多时间重复执行。 在我看来,IntelliJ应该自动找到源代码,因为它存在于我的Project中(它是我自己的类,它的源代码在项目中,我从Project视图运行这个测试,其中带有源代码的类是可见的)。 如何配置IntelliJ,以便它为我运行的每个unit testing自动找到源代码?

显示的“.class”文件而不是“.java”文件包含在由Maven构建的jar文件中。

您应该能够在项目视图(文件>项目结构)中转到外部库,找到包含.class文件的jar,然后右键单击(或F4)。 您将看到“打开库设置”。 在该对话框中,您可以将src文件夹附加到库中。 在此处输入图像描述

我有一个类似的问题。 在我的情况下,这是由于不正确的模块配置。 基本上,您必须确保将包含java文件的源文件夹添加到相应模块的“ Sources选项卡中。

要执行此操作,请转到Project Structure (Ctrl + Alt + Shift + S)并选择Modules 。 选择相应的模块并validation包含java文件的源文件夹是否已正确添加到“ Sources Folders 。 如果不是那么添加它。

我有一个类似的问题。 即使指向正确的源文件夹后问题仍然存在,但我通过将classes文件夹设置为源代码的根文件夹来摆脱它。

在此处输入图像描述

我今天得到了这个问题。 我的解决方案是右键单击main pom.xml,然后单击maven,然后重新导入。