在项目中找不到测试类 - “启动配置的输入类型不存在”

Vai*_*hav 2 java eclipse junit5 testcontainers

我正在为我的项目使用 TestContainers,但是当我在 eclipse 中运行测试时,出现以下错误 JUnit5 错误窗口

在此窗口顶部,它还给出了一个特定错误,指出Cannot find test class "DBInitTest" in project "myProject"。

package org.ft.cdcp;

import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.*;
import org.testcontainers.containers.PostgreSQLContainer;
import org.testcontainers.utility.DockerImageName;
import org.testcontainers.junit.jupiter.Testcontainers;

@Testcontainers
public class DBInitTest {
    private final PostgreSQLContainer sqlContainer = new PostgreSQLContainer(DockerImageName.parse("postgres:alpine"));
    
    @BeforeEach
    public void setUp() {
        sqlContainer.start();
    }
    
    @Test
    @DisplayName("Initializing database container")
    public void initTest() {
        assertTrue(sqlContainer.isRunning());
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,我已经检查并重新检查了依赖项,一切都完好无损,没有任何问题,只有 JUnit5 有问题。

我在网上查了一下,但只发现了一些内容,说我应该右键单击源文件夹 --> 构建路径 --> 使用作为源路径,但此修复似乎对我不起作用。

小智 7

我不是专家,无法解释为什么会解决这个问题,但是:-

今天我开始遇到与您报告的相同的问题。

经过一番摆弄(重新安装STS、lombok...)我最终点击了弹出的错误条目。我需要为无法运行的测试“编辑启动配置属性”。

到达那里后,我单击“测试类:”字段行上的“搜索”。

我从弹出的“测试选择”窗口中选择了正确的班级。(注意我认为与已经存在的值相同)

更新

现在我觉得很傻。

我在名为“AdminTaskControllerMockMvcTests.java”的文件中有一个名为“AdminTaskControllerMockMvcTest”的测试类,即类名末尾带有“s”。

将我的测试类重命名为“AdminTaskControllerMockMvcTests”解决了我的所有问题。

问候,安德鲁