У меня тест SpringRunner настроен так:
@RunWith(SpringRunner.class)
@WebMvcTest(MyController.class)
public class MyControllerTest {
@Autowired
private MockMvc mockMvc;
@MockBean
private MyClass handler;
@Test
public void myFirstTest() {
given(handler.handle(any())).willReturn(new Response());
mockMvc
.perform(
post("/forms/TESTFORM/validate")
.header("ServiceAuthorization", "testServiceAuthHeader")
.content(requestBody)
)
.andExpect(status().isOk())
}
}
Это проходит нормально. Однако у меня есть несколько типов форм, которые я хочу протестировать как часть myFirstTest
. Я пробовал следующее, что приводит к ошибке:
@ParameterizedTest
@MethodSource("formTypes")
public void myFirstTest(String formType) {
given(handler.handle(any())).willReturn(new Response());
mockMvc
.perform(
post("/forms/" + formType + "/validate")
.header("ServiceAuthorization", "testServiceAuthHeader")
.content(requestBody)
)
.andExpect(status().isOk())
}
private static Stream<String> formTypes() {
return Stream.of(
"TESTFORM1",
"TESTFORM2"
);
}
Просто дает
"FAILURE: сборка завершилась с исключением. * Что пошло не так: выполнение задачи не выполнено ': test'. Для данного теста не найдено ни одного теста, включающего: MyControllerTest.myFirstTest [*] "
Есть идеи, как заставить это работать?