Restassured + Не удалось проанализировать документ JSON - PullRequest
0 голосов
/ 25 мая 2020

При выполнении POST через библиотеку rest assured я получаю следующую ошибку: -

Restassured + Failed to parse the JSON document + groovy. json .JsonException: Lexing failed on line: 1, столбец: 1, при чтении «h» невозможно распознать возможное допустимое JSON значение или пунктуацию.

Полезная нагрузка упоминается в классе «Полезная нагрузка». Пожалуйста, помогите мне решить эту проблему с синтаксическим анализом JSON. Я могу успешно выполнить POST, но при получении данных через класс Jsonpath выдает ошибку, указанную в строке темы.

package files;

import org.testng.annotations.Test;

import io.restassured.RestAssured;
import io.restassured.path.json.JsonPath;

import static io.restassured.RestAssured.*;

public class DynamicJson {

    @Test
    public void addBook(){

        String response1 = RestAssured.baseURI="http://216.10.245.166";
        given().log().all().header("Content-Type","application/json")
        .body(Payload.Addbook())
        .when().post("Library/Addbook.php")
        .then()
        .log().all().assertThat().statusCode(200)
        .extract().response().asString();


        JsonPath js1 = new JsonPath(response1);
        String id = js1.get("ID");
        System.out.println(id);





    }

}

package files;

public class Payload {


    public static String Addbook(){

        String payload = "{\r\n" + 
                "   \"name\":\"Learn Appium Automation with Java\",\r\n" + 
                "   \"isbn\":\"bcd\",\r\n" + 
                "   \"aisle\":\"29k27\",\r\n" + 
                "   \"author\":\"John foe\"\r\n" + 
                "}";
        return payload;

    }
}

1 Ответ

1 голос
/ 26 мая 2020

Это очень маленькая ошибка

Вы разбираете JSON в строке response1, которая неверна

Измените его с

String response1 = RestAssured.baseURI="http://216.10.245.166";

на

RestAssured.baseURI = "http://216.10.245.166";
String response1 = given().header().....

Остальная часть вашего кода в порядке

...