Ошибка тайм-аута в RestAssured, тогда как сервис отправляет ответ в postman / soapUI - PullRequest
0 голосов
/ 11 октября 2019

Этот код выдает ошибку тайм-аута, в то время как служба выдает ответ в postman / soapUI

Я пытаюсь автоматизировать службу остальных. Сервис работает нормально soapUI, тогда как при автоматизации в restAssured выдает ошибку тайм-аута.

import org.testng.annotations.Test;
import static io.restassured.RestAssured.given;

import io.restassured.RestAssured;
import io.restassured.response.Response;

public class AddUsers {

    @Test

    public void addUsers()

    {

        RestAssured.baseURI = "http://reqres.in";

        given().header("Content-Type","application/json").body("{\r\n" + 
                "    \"name\": \"Mallik\",\r\n" + 
                "    \"job\": \"TestLead\"\r\n" + 
                "}").when().post("/api/users");



    }


}

Ответы [ 2 ]

0 голосов
/ 15 октября 2019

Попробуйте использовать ниже. Я добавил код для addUsers и getUsers. Я бы предложил вам создать класс POJO для тела, через которое вы проходите конечную точку POST.

import org.testng.annotations.Test;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.response.Response;
import net.serenitybdd.rest.SerenityRest;

public class Test11 {

    static Response response;

    @Test
    public void addUsers() {
        RestAssured.baseURI = "http://reqres.in";
        response = SerenityRest.given().urlEncodingEnabled(false).relaxedHTTPSValidation().contentType(ContentType.JSON)
                .log().all()
                .when().body("{\r\n" + 
                        "    \"name\": \"Mallik\",\r\n" + 
                        "    \"job\": \"TestLead\"\r\n" + 
                        "}")
                .post("/api/users")
                .then().log().all().extract().response();
    }

    @Test
    public void getUsers() {
        RestAssured.baseURI = "http://reqres.in";
        response = SerenityRest.given().urlEncodingEnabled(false).relaxedHTTPSValidation().contentType(ContentType.JSON)
                .log().all()
                .when()
                .get("/api/users?id=3")
                .then().log().all().extract().response();
    }
}

Дайте мне знать, если это решило вашу проблему.

0 голосов
/ 11 октября 2019

Вам нужно использовать https. я получаю вывод правильно

    RestAssured.baseURI = "https://reqres.in";
    Response resp = given().header("Content-Type", "application/json")
            .body("{\n" + "    \"name\": \"Mallik\",\n" + "    \"job\": \"leader\"\n" + "}").when()
            .post("/api/users");
    System.out.println(resp.getStatusCode());
    System.out.println(resp.asString());
...