Как передать параметр запроса / пути в функциональном / модульном тесте? - PullRequest
0 голосов
/ 12 сентября 2018

Я хочу написать тест для моего контроллера.И мне нужно передать параметр, чтобы получить ().Как я могу это сделать?

Контроллер:

@GetMapping("/getClientById")
    public ModelAndView getClientById(Integer id){
        return new ModelAndView("getClientById", "client", clientService.getClientById(id));
    }

Метод испытаний:

given().header("Content-Type", "application/x-www-form-urlencoded")
                .when()
                .get("getClientById/")//How can I put here an ID ?
                .then()
                .statusCode(200);

1 Ответ

0 голосов
/ 12 сентября 2018

Вы должны включить param в ваше отображение

@GetMapping("/getClientById/:clientId")
    public ModelAndView getClientById(@PathParam("clientId") Integer id){

или

@GetMapping("/getClientById")
    public ModelAndView getClientById(@QueryParam("id") Integer id){

, а затем соответственно

.get("getClientById/youridvalue")//How can I put here an ID ?

и

.get("getClientById?id=youridvalue")//How can I put here an ID ?

Что касается второго варианта, я думаю, что есть метод для включения параметров запроса, но я понятия не имею, какой API вы используете, поэтому не могу уточнить это (вероятно, еще нет)

...