Я пишу тесты, чтобы проверить, что я могу сделать родовое сообщение формы в нашем API.
Я также добавил довольно немного отладки, но я заметил, что данные, отправленные фактической формой; (Postman/AngularJS или w/e) Отличается от выполнения теста mockMVC, например:
MvcResult response = mockMvc
.perform(post("/some/super/secret/url") //
.param("someparam1", "somevalue") //
.param("someparam2", "somevalue") //
.contentType(MediaType.APPLICATION_FORM_URLENCODED) //
.accept(MediaType.APPLICATION_JSON)) //
.andExpect(status().isOk()) //
.andReturn();
Конфигурация в точности совпадает с конфигурацией, выполняемой в процессе производства, и таковой. Однако Когда мой перехватчик регистрирует содержимое, в реальном тесте (не mockMVC) содержимое форматируется как "someparam1 = somevalue & etc = encore"
Когда я печатаю содержимое mockMVC, на самом деле у меня нет контента, но в запросе есть Params, я предполагаю, что они добавлены как параметры GET.
Кто-нибудь знает, как правильно проверить это? Я столкнулся с этой проблемой, так как кажется, что наши сообщения формы не анализируются с помощью Spring, хотя мы добавили FormHttpMessageConverter в контекст сервлета.