Пружинный ботинок - макJAVA

Программисты JAVA общаются здесь
Anonymous
Пружинный ботинок - мак

Сообщение Anonymous »

У меня проблема во время тестирования запроса отдыха.
Однако тест перехвачен < /strong> одним из моих перехватчиков. < /p>

Короче говоря, я хочу mock < /em> поведение перехватчиков, а не называть фактическую реализацию. < /p>

Для целей простоты, чтобы визуализировать проблему, здесь - простой запрос < /p>

@Controller
public class HiController {

@ResponseBody
@GetMapping(value = "/hi", produces = {"application/json"})
public String hi() {
return "hi";
}
}
< /code>

с простым перехватчиком и файлом конфигурации < /p>

@Component
public class LoggingInterceptor implements HandlerInterceptor {

@Override
public final boolean preHandle(HttpServletRequest request, final HttpServletResponse response, final Object handler) {
System.out.println("Logging token interceptor");
return true;
}
}

@Component
public class InterceptorAppConfig implements WebMvcConfigurer {

@Autowired
private LoggingInterceptor loggingTokenInterceptor;

@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(loggingTokenInterceptor);
}
}
< /code>

Цель теста состояла в том, чтобы вызовать конечную точку REST и издеваться над перехватчиком < /p>

@RunWith(SpringRunner.class)
@WebMvcTest(HiController.class)
public class HiControllerTest extends MvcTest {

@Autowired
private MockMvc mockMvc;

@MockBean
RestTemplate restTemplate;

@Mock
private HiController controller;

private static final String AUTHENTICATE_USER = "/hi";

@Test
public void mandatoryFieldMissing() throws Exception {

this.mockMvc.perform(get(AUTHENTICATE_USER))
.andExpect(content().string(containsString("hi")))
.andExpect(status().isOk());
}
}

@RunWith(SpringRunner.class)
public abstract class MvcTest {

@MockBean
LoggingInterceptor loggingTokenInterceptor;
}
< /code>

Когда я запускаю этот тест ^ loggingInterceptor < /code> все еще вызывается. < /p>

Как я могу настроить тесты, чтобы иметь макетные перехватчики? < /p>

Подробнее здесь: https://stackoverflow.com/questions/581 ... terceptors

Вернуться в «JAVA»