Java 更改后运行单元测试不会在IntelliJ中运行更新的测试

Java 更改后运行单元测试不会在IntelliJ中运行更新的测试,java,maven,unit-testing,intellij-idea,junit,Java,Maven,Unit Testing,Intellij Idea,Junit,这太奇怪了,只发生在我项目中的一个模块上 如果我更改一个测试的名称,然后右键单击并运行该测试,它将显示找不到匹配方法的测试:newName。它实际上是在尝试运行旧的测试,而不是新的测试,尽管我没有重新运行相同的运行配置——我右键单击并运行新编辑的测试 这可能是什么原因造成的? 在运行配置中,添加构建项目,以便它在运行测试之前获取最新的更改构建您的项目运行编译后的代码,而不是代码中最新修改的代码。当然,添加断言不会引起太多问题,但是如果您不加注意地重命名它,您的IDE可能仍然会找到以前的断言并使用

这太奇怪了,只发生在我项目中的一个模块上

如果我更改一个测试的名称,然后右键单击并运行该测试,它将显示找不到匹配方法的测试:newName。它实际上是在尝试运行旧的测试,而不是新的测试,尽管我没有重新运行相同的运行配置——我右键单击并运行新编辑的测试

这可能是什么原因造成的?


在运行配置中,添加构建项目,以便它在运行测试之前获取最新的更改

构建您的项目运行编译后的代码,而不是代码中最新修改的代码。当然,添加断言不会引起太多问题,但是如果您不加注意地重命名它,您的IDE可能仍然会找到以前的断言并使用它。@Stultuske确实是这样,但是对于其他模块,它会自动拾取更改的名称,而无需重新构建-这是为什么?我如何才能使这个模块也不需要重新构建以运行更新的测试?当然,如果这是一个问题,那么所有运行配置(包括其他模块)都会发生这种情况?但它只针对这一个模块?请检查您的项目结构>模块。此外,在运行配置中,请确保使用moduleI的类路径,并确认它已经在运行配置中构建了项目,因此这不是修复方法。我现在将检查你的最新建议。但是,作为一个补充说明,这些都需要编辑运行配置-但是如果没有运行配置呢?当我直接在方法上运行测试,IDEA生成运行配置本身时?必须有一些通用的修复程序,以便这些测试可以运行,而不必在以后编辑生成的运行配置?是的,测试有一个默认配置。“运行/调试”配置对话框左侧有配置树。其中一个节点称为默认值/模板。如果展开它,可以编辑任何类型的运行配置类型的默认值,包括“JUnit测试”。