MockMVC test java.lang.AssertionError: Ожидаемый статус: 201 Фактический: 404

Я пишу тестовые примеры с использованием MockMVC:

Мой метод тестирования следующий:

Как я могу это исправить? В чем ошибка? Как мне легче написать этот тест? Спасибо за помощь. Как я могу исправить свой код?


person martine    schedule 02.05.2018    source источник
comment
Вы знакомы с кодами состояния HTTP? Цифры 201 и 404 в сообщении об ошибке являются хорошей отправной точкой для изучения. Код ожидает, что сервер ответит 201, что означает, что да, я создал это для вас, а вместо этого отвечает 404, что означает, что я не могу его найти. Если это не часть того, о чем вы спрашиваете, возможно, вы захотите [отредактировать [ваш вопрос, чтобы предоставить больше контекста о том, что ваши тесты должны тестировать.   -  person Jason Aller    schedule 03.05.2018
comment
к сожалению, это мне ничего не говорит и не помогает, потому что я до сих пор не знаю, как улучшить код   -  person martine    schedule 03.05.2018
comment
Мой комментарий не был ответом. Комментарии используются для получения уточняющей информации или для внесения предложений по улучшению вопроса. Из вашего вопроса было непонятно, что вам нужно в ответе. Я спросил, знакомы ли вы с кодами http, чтобы понять, где вы были в процессе отладки.   -  person Jason Aller    schedule 03.05.2018
comment
хорошо, вы можете помочь мне это исправить?   -  person martine    schedule 03.05.2018
comment
Я не использую MockMVC, я закончил комментировать, потому что этот вопрос пришел через одну из очередей на рассмотрение. Я могу попытаться помочь подготовить вопрос, чтобы кто-то другой мог дать ответ, который вы ищете. Прочтите в справочном центре материалы о том, как максимально эффективно использовать Stack Overflow.   -  person Jason Aller    schedule 03.05.2018


Ответы (1)


Похоже, вы пытаетесь запустить тест без поддержки тестирования загрузки Spring (вы прокомментировали аннотацию @SpringBootTest)

Затем попробуйте инициализировать mockmvc как автономный и передать напрямую контроллер в качестве аргумента:

// mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
mockMvc = MockMvcBuilders.standaloneSetup(accountController).build();
person user2456718    schedule 03.05.2018
comment
в настоящее время - ошибка java.lang.IllegalStateException: не удалось загрузить ApplicationContext - person martine; 03.05.2018
comment
Вам, вероятно, следует вставить больше своей трассировки стека, а также структуры вашего проекта, иначе действительно сложно понять, что происходит прямо сейчас. - person user2456718; 03.05.2018
comment
java.lang.IllegalStateException: не удалось загрузить ApplicationContext в org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext (DefaultCacheAwareContextLoaderDelegate.java:125) - person martine; 03.05.2018
comment
в org.springframework.test.context.support.DefaultTestContext.getApplicationContext (DefaultTestContext.java:107) - person martine; 03.05.2018
comment
проект Spring с градиентом. - person martine; 03.05.2018