Итак, это конечная точка, которую я пытался протестировать с помощью автономной установки MockMVCBuilders, но без аннотации @Valid она попадает в конечную точку для тестирования, но при использовании этой аннотации в журнале выдается запрос 400 BAD.вот код ниже. Есть ли какая-то конкретная конфигурация, которую мне нужно установить в моих MOckMVCBuilders?
@PostMapping(value = "/record", produces = MediaType.APPLICATION_JSON_VALUE)
public Resource
recordSms(@Valid RecordData recordData,
@RequestParam(value = "options[]", required = false) Set opt)
{
// other codes
}
и ниже приведен тестовый код
@RunWith(MockitoJUnitRunner.class)
public class SmsControllerTest {
@Mock
private TAUser user;
@Mock
//mocked all dependeant classes
@InjectMocks
private TestableController testableController;
@Mock
private MockMvc mockMvc;
private final JsonFixtureFactory jsonFixtureFactory = new JsonFixtureFactory();
@Before
public void setUp() throws Exception {
mockStatic(ApprovableMessagesController.class);
mockMvc = MockMvcBuilders.standaloneSetup(testableController)
.build();
}
@Test
public void testSave() throws Exception {
//resource that needed to be mocked and also stubbed
mockMvc.perform(post("/endpoint").contentType(MediaType.APPLICATION_JSON)
.content(jsonFixtureFactory.toString(testAbleControllerData))
.andExpect(status().isOk());
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-spring
Как выполнить модульное тестирование аннотированной полезной нагрузки контроллера отдыха с помощью @Valid весной ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение