IntelliJ 中 SpringExtension.java:381 处的 java.lang.AbstractMethodError
温馨提示:
本文最后更新于 2024年04月12日,已超过 48 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
i have tried to run some tests for my spring boot application that i`m currently working on in Java. I keep getting an 'AbstractMethodError' and i'm not entirely sure what has been causing it.
@SpringBootTest
@AutoConfigureMockMvc
public class LandingPageTest {
static Playwright playwright;
static Browser browser;
BrowserContext context;
Page page;
@Configuration
public static class AppConfig {
@Bean
public User user() {
return new User();
}
}
@BeforeAll
static void launchBrowser(){
playwright = Playwright.create();
browser = playwright.chromium().launch();
}
@AfterAll
static void closeBrowser() {
browser.close();
}
@BeforeEach
void createContextAndPage() {
context = browser.newContext();
page = context.newPage();
}
@AfterEach
void closeContext() {
context.close();
}
@MockBean
private UserService userService;
@Autowired
private UserController controller;
@Autowired
private RestTemplateBuilder restTemplateBuilder;
private RestTemplate restTemplate;
@BeforeEach
void setUpRestTemplate() {
restTemplate = restTemplateBuilder.build();
}
@Test
public void signupReturnsSuccess() {
final HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", MediaType.APPLICATION_JSON_VALUE);
User user = new User();
user.setEmail("[email protected]");
user.setName("username");
user.setPassword("Password1!");
final ResponseEntity<User> response = restTemplate.exchange(
String.format("http://localhost:%d/users/signup", 8080),
HttpMethod.POST,
new HttpEntity<>(user, headers),
User.class
);
assertThat(response.getStatusCode()).isEqualTo(HttpStatus.CREATED);
}
}
this is the error that i keep getting:
LandingPageTest > initializationError FAILED
java.lang.AbstractMethodError at SpringExtension.java:381
This is a snapshot of the terminal print out:
java.lang.AbstractMethodError: Receiver class org.junit.jupiter.engine.descriptor.ClassExtensionContext does not define or inherit an implementation of the resolved method 'abstract org.junit.jupiter.api.extension.ExecutableInvoker getExecutableInvoker()' of interface org.junit.jupiter.api.extension.ExtensionContext.
at org.springframework.test.context.junit.jupiter.SpringExtension.registerMethodInvoker(SpringExtension.java:381)
at org.springframework.test.context.junit.jupiter.SpringExtension.beforeAll(SpringExtension.java:132)
at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeBeforeAllCallbacks$8(ClassBasedTestDescriptor.java:368)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
I have tried changing the dependency versions within my build.gradle file but it doesn't seem to be working.
here is my current set up:
dependencies {
// Spring Boot dependencies
implementation 'com.microsoft.playwright:playwright:1.28.0'
implementation 'org.springframework.boot:spring-boot-starter-data-mongodb:2.6.5' // Update version
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf:2.6.5' // Update version
implementation 'org.springframework.boot:spring-boot-starter-web:2.6.5' // Update version
implementation 'com.fasterxml.jackson.core:jackson-databind'
// Testing dependencies
testImplementation 'org.junit.platform:junit-platform-launcher:1.9.3'
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.0'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'io.projectreactor:reactor-test'
}
正文到此结束
- 本文标签: 家庭宠物
- 本文链接: https://www.coder6.net/article/2402
- 版权声明: 本文由蚂蚁原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权
热门推荐
-
浏览(193) 评论(0)