Autowired MockMvc имеет значение null с JUnit 5 и загрузкой SpringJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Autowired MockMvc имеет значение null с JUnit 5 и загрузкой Spring

Сообщение Anonymous »

У меня есть тест класса, который отправляет мне сообщение об ошибке при запуске теста.
Я следил за несколькими потоками и у меня есть право на импорт «import org.junit.jupiter.api.Test»
Поэтому я не понимаю, почему он отправляет мне эту ошибку:

Невозможно вызвать «org.springframework.test.web.servlet.MockMvc.perform(org.springframework.test.web.servlet.RequestBuilder)», потому что «this.mockMvc» имеет значение null

Мой код:
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.test.web.servlet.MockMvc;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;

@WebMvcTest(TestController.class)
public class ControllerTest {

@Autowired
private MockMvc mockMvc;

@MockBean
private CreateMessageProvider createMessageProvider;

@Test
public void test() throws Exception {
this.mockMvc.perform(get("/test"))
.andDo(print())
.andExpect(status().isOk())
.andExpect(content().string("OK"));
}
}

Конфигурация Gradle:
mockitoCoreVersion = '4.6.1'
mockitoJunitJupiterVersion = '4.6.1'
springBootTestVersion = '2.7.2'
springTestVersion = '5.3.22'

testImplementation "org.springframework.boot:spring-boot-test:$springBootTestVersion"
testImplementation "org.springframework:spring-test:$springTestVersion"
testImplementation "org.mockito:mockito-junit-jupiter:$mockitoJunitJupiterVersion"
testImplementation "org.mockito:mockito-core:$mockitoCoreVersion"

РЕДАКТИРОВАНИЕ: я нашел решение. В моем файле Gradle не было этой зависимости:
testImplementation "org.springframework.boot:spring-boot-starter-test:2.7.2"


Подробнее здесь: https://stackoverflow.com/questions/733 ... pring-boot
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»