2015-02-27 3 views
0

Я написал контроллер Rest следующим образом:Как написать JUnit для отдыха контроллера

@RestController 

public class RegisterRestController { 

@RequestMapping(value = "/create", method = RequestMethod.POST, consumes = "application/json", produces = "application/json") 

    public RegisterResponseObject createProspect(
      @Valid @RequestBody ProfileBean profileBean) throws Exception { 

    //If validation passes do something 
} 

} 

Здесь, если проверка не пройдена я обработки исключений в совет контроллера и отправка объект ошибки обратно клиенту.

Как протестировать этот контроллер с помощью JUnit для проверки эрос.

Заранее спасибо.

ответ

0

Если вы обрабатываете все ошибки с помощью рекомендаций контроллера в обычном запросе клиента, вы можете сделать то же самое в JUnit.

При тестировании классов контроллеров мы создаем объект MockMvc, а затем устанавливаем для него настраиваемый советник. Таким образом, когда в методе классов контроллера есть какое-либо исключение, он сначала переходит к совету контроллера, а затем возвращается к тесту JUnit.

Например:

@Before 
public void setup() { 
    MockitoAnnotations.initMocks(this); 
    this.mockMvc = MockMvcBuilders.standaloneSetup(this.customController) 
      .setControllerAdvice(new CustomControllerAdvice()).build(); 
} 

Это должно помочь в тестировании контроллера.
Примечание: Я проверил это с помощью пружины 4 версии

Смежные вопросы