Мне нужно сделать простой тест, используя REST-assured. Это ссылка на Google Maps API http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway+Mountain+View+CA&sensor=falseПростой тест с гарантией Google Maps API
и мне нужно, чтобы убедиться, что StatusCode для этого запроса является правильным (200) и поля: статус: «OK» тип «street_address» страна «США»
Я написал этот код, но он частично работает
public class RestTest {
@Test
public void Test1() {
RestAssured.get("http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway+Mountain+View+CA&sensor=false").then().
statusCode(200).
contentType(ContentType.JSON).
body("status", equalTo("OK")).
body("results.types", equalTo("street_address")).
body("results.address_components.short_name", equalTo("US"));
Проверка кода состояние, тип содержимого и первая часть тела (статус = OK) работает хорошо и пройти тест, но я имел проблемы с двумя последними телом тесты, они терпят неудачу, и я получаю:
JSON path results.types doesn't match.
Expected: street_address
Actual: [[street_address]]
Вам нужно добавить индекс элемента в "теле ("[0] .types", содержит ("street_address")). тоже выглядит так: «body (« results [0] .types [0] », содержит (« street_address »)). После этого он работает отлично. Большое спасибо за помощь. – cbronson1