Java.lang.NoSuchMethodError: 'java.lang.String org.junit.platform.engine.discovery.MethodSelector.getMethodParameterTypeJava

Java-Forum
Anonymous
 Java.lang.NoSuchMethodError: 'java.lang.String org.junit.platform.engine.discovery.MethodSelector.getMethodParameterType

Post by Anonymous »

Ich versuche, ein Beispiel für Spring Boot zu entwickeln, indem ich Redis verwende, das auf Docker läuft. Nachdem die Implementierung abgeschlossen ist, versuche ich, einige Tests zu schreiben. Wenn ich einen Test ausführe, anstatt alle Tests auszuführen, wird das unten angezeigte Problem angezeigt
Hier ist die unten angezeigte Fehlermeldung

Code: Select all

Exception in thread "main" java.lang.NoSuchMethodError: 'java.lang.String org.junit.platform.engine.discovery.MethodSelector.getMethodParameterTypes()'
at com.intellij.junit5.JUnit5TestRunnerUtil.loadMethodByReflection(JUnit5TestRunnerUtil.java:127)
at com.intellij.junit5.JUnit5TestRunnerUtil.buildRequest(JUnit5TestRunnerUtil.java:102)
at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:43)
at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:231)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
Ich habe kein Problem, wenn ich alle Tests ausführe.
Hier ist die abstrakte Testklasse für den Dienst

Code: Select all

import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.junit.jupiter.MockitoExtension;
import org.mockito.junit.jupiter.MockitoSettings;
import org.mockito.quality.Strictness;

@ExtendWith(MockitoExtension.class)
@MockitoSettings(strictness = Strictness.LENIENT)
public class AbstractBaseServiceTest {

}
Hier ist die abstrakte Testklasse für Controller

Code: Select all

import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.webmvc.test.autoconfigure.AutoConfigureMockMvc;
import org.springframework.test.web.servlet.MockMvc;

@SpringBootTest
@AutoConfigureMockMvc
public abstract class AbstractRestControllerTest extends AbstractTestContainerConfiguration {

@Autowired
protected MockMvc mockMvc;

@Autowired
protected ObjectMapper objectMapper;

}
Hier ist die abstrakte Testklasse für testcontainer

Code: Select all

import org.junit.jupiter.api.BeforeAll;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.GenericContainer;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;

@Testcontainers
public abstract class AbstractTestContainerConfiguration {

private static final DockerImageName REDIS_IMAGE = DockerImageName.parse("redis:7.4.1");

static final GenericContainer REDIS_CONTAINER =
new GenericContainer(REDIS_IMAGE).withExposedPorts(6379);

@BeforeAll
static void beforeAll() {
REDIS_CONTAINER.withReuse(true);
REDIS_CONTAINER.start();
}

@DynamicPropertySource
static void overrideProps(DynamicPropertyRegistry registry) {
registry.add("redis.host", REDIS_CONTAINER::getHost);
registry.add("redis.port", () ->  REDIS_CONTAINER.getMappedPort(6379));
}
}
Hier ist der relevante Teil von pom.xml

Code: Select all

25
5.11.4
1.21.4
1.5.5.Final
0.2.0
0.8.13
2.8.13
3.5.2
3.5.2
1.21.4
2.2.4




org.springframework.boot
spring-boot-starter-web



org.springframework.boot
spring-boot-starter-test
test



org.springframework.boot
spring-boot-starter-webmvc



org.projectlombok
lombok
true



org.mapstruct
mapstruct
${mapstruct.version}



org.springframework.boot
spring-boot-starter-webmvc-test
test



org.springdoc
springdoc-openapi-starter-webmvc-ui
${springdoc-openapi.version}



org.springframework.boot
spring-boot-starter-data-redis



org.springframework.boot
spring-boot-starter-data-redis-test
test



org.springframework.boot
spring-boot-jackson2



org.springframework.boot
spring-boot-starter-validation



org.springframework.boot
spring-boot-starter-actuator



org.testcontainers
junit-jupiter
${testcontainer.junit.version}
test



com.redis
testcontainers-redis
${redis.testcontainer.version}
test








org.testcontainers
testcontainers-bom
${testcontainers.bom.version}
pom
import



Wo liegt das Problem? Wie kann ich das Problem beheben?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post