Я пытаюсь протестировать две конечные точки API отдыха, одна - получение, а другая - публикация.Идея состоит в том, что тело ответа, возвращаемое ответом get, должно быть телом сообщения.
Код, который я использую:
RestAssured.baseURI = ROOT_URI;
RequestSpecification httpRequest =
RestAssured.given().header("Authorization", "Basic " + encodedString);
String endPoint="/v1/getworkers";
Response response = httpRequest.request(Method.GET, endPoint);
String responseBody = response.getBody().asString();
Теперь тело ответа, которое я получаю:
{"workerDetails":
[
{"workerId":"TEST123456",
"securityId":"TESTWORKERID",
"workerStatus":"Active",
"firstName":"Test",
"lastName":"Userone"}
]
}
Теперь я делаю запрос на публикацию и помещаюСтрока responseBody как тело:
RestAssured.baseURI = ROOT_URI;
String endpoint="/v1/PostWorkers";
RequestSpecification httpRequest =
RestAssured.given().header("Authorization", "Basic " + encodedString)
.header("Content-Type", "application/json").body(postbody);
Response response = httpRequest.request(Method.POST,endpoint);
String responseBody = response.getBody().asString();
И я получаю ошибку 400:
отметка времени ": 1552670194453," status ": 400," error ":" Bad Request"," exception ":" org.springframework.http.converter.HttpMessageNotReadableException "," message ":" Ошибка синтаксического анализа JSON: Невозможно десериализовать экземпляр java.util.ArrayList из токена START_OBJECT;вложенным исключением является com.fasterxml.jackson.databind.JsonMappingException: невозможно десериализовать экземпляр java.util.ArrayList из маркера START_OBJECT \ n в [Source: java.io.PushbackInputStream@56bba771
Whatделать?