NullPointerException в HttpServlet при тестирование Spring MVC


Доброй ночи! Есть небольшое приложение на Spring MVC, которое принимает форму запроса с тремя полями и передает ее на сервис, который возвращает объект с двумя полями: списком question-ов и статусом поиска. Мне нужно написать Unit-тест для контроллера. При Get-запросе тест проходит, а когда отправляю Post-запрос с параметрами вываливается NPE.

Это мой контроллер:

@Controller 

public class PianoController {

@Autowired private FrontendService frontendService;  @Autowired private StackExchangeService stackExchangeService;  @Value("$  {failed.message}") private String failedMessage;  @Value("$  {nothingFound.message}") private String nothingFoundMessage;  @Value("$  {error.message}") private String errorMessage;  @RequestMapping(value = {"/", "/homePage"}, method = RequestMethod.GET) public String getHomePage(Model model) {     QueryForm queryForm = frontendService.homePage();     model.addAttribute("queryForm", queryForm);     return "homePage"; }  @RequestMapping(value = {"/homePage", "/resultsPage"}, method = RequestMethod.POST) public String getResults(Model model, QueryForm queryForm) {     StackExchangeResponse response = stackExchangeService.getQuestions(queryForm);     switch (response.getStatus()) {         case FAILED:             model.addAttribute("failedMessage", failedMessage);             return "resultsPage";         case SUCCESS:             model.addAttribute("questions", response.getQuestions());             return "resultsPage";         case NOT_FOUND:             model.addAttribute("nothingFoundMessage", nothingFoundMessage);             return "resultsPage";         case ERROR:             model.addAttribute("errorMessage", errorMessage);             return "resultsPage";      }     model.addAttribute("errorMessage", errorMessage);     return "resultsPage"; } 

}

А это тест:

public class PianoControllerTest {  private static final int UNKNOWN_ID = Integer.MAX_VALUE;  private MockMvc mvc;  @Mock private FrontendService frontendService;  @Mock private StackExchangeService stackExchangeService;  @InjectMocks private PianoController pianoController;  @Before public void init() {     MockitoAnnotations.initMocks(this);     mvc = MockMvcBuilders             .standaloneSetup(pianoController)             .addFilters(new CORSFilter())             .build(); }  @Test public void getHomePage() throws Exception{     when(frontendService.homePage()).thenReturn(new QueryForm());     this.mvc.perform(get("/"))     .andExpect(status().isOk())     .andExpect(model().attributeExists("queryForm")); }  @Test public void getResults() throws Exception{     QueryForm queryForm = new QueryForm();     List<Question> questions = new ArrayList<>();     StackExchangeResponse stackExchangeResponse = new StackExchangeResponse(questions, Status.SUCCESS);     ResultActions resultActions = mvc.perform(post("/homePage")             .param("title", "java"));     when(stackExchangeService.getQuestions(queryForm)).thenReturn(stackExchangeResponse);  } 

}