Spring Boot + TestNG + MockMVC дает Null для @Autowired

Я новичок в Spring-Boot, TestNG и MockMVC, когда я пытаюсь написать тестовый пример TestNG, он дает Null ниже:

@Autowired
private WebApplicationContext webApplicationContext;

а также дает null для

@BeforeTest
public void start()
{
     mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build();
}

Кроме того, на основе предыдущего сообщения из stackoverflow путем перемещения

mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build(); в @Контрольная работа тоже проблема не решена.

Ниже моего фрагмента кода

@Autowired
private WebApplicationContext webApplicationContext;

private MockMvc mockMvc;

@BeforeTest
public void setup() {
    mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build();
}

@Test
public void testEmployee() throws Exception {
    mockMvc.perform(get("/employee")).andExpect(status().isOk())
        .andExpect(content().contentType("application/json;charset=UTF-8"))
        .andExpect(jsonPath("$.name").value("emp1")).andExpect(jsonPath("$.designation").value("manager"))
        .andExpect(jsonPath("$.empId").value("1")).andExpect(jsonPath("$.salary").value(3000));
}

Любая ссылка или рабочий образец будут большим подспорьем.

Благодарность

Можете ли вы добавить больше кода? (например, аннотации вверху класса)

TwiN 25.05.2018 06:02

@TwiN Я добавил фрагмент кода. Спасибо

kadi nana 25.05.2018 06:06
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
2
597
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы хотите автоматически подключить WebApplicationContext, ваш тестовый класс должен быть аннотирован @ContextConfiguration и @WebAppConfiguration.

Вы можете найти пример здесь (официальный репозиторий Spring Framework).

Другие вопросы по теме