Как я могу проверить Rest-Assured запрос другим способом? - PullRequest
0 голосов
/ 13 апреля 2019

Я разработал запрос Rest-Assured для класса dataMap, но мне нужно проверить этот запрос в другом методе, чтобы вызвать шаги огурца моей функции.

Моя особенность огурца:

Esquema do Cenario: Criar uma conta valida
        Dado que realizo a chamada no <ambiente> da <api> informando <token_admin> e um email e <senha> novos
        Entao devera retornar <status code>

Я пытался сделать это так:

public class dataMap extends tests {

private Response response;
private ValidatableResponse json;
private RequestSpecification request;

    public void criarConta(String srtAmbiente, String srtAPI, String srtToken, String srtSenha) {

        String uriBase = srtAmbiente;
        String Api = srtAPI;

        int length = 15;
        String email = generateRandomEmail(length);
        System.out.println(email);
        Map<String, String> emailContent = new HashMap<String,String>();
        emailContent.put("email", email);
        Map<String, Object> postContent = new HashMap<String,Object>();
        postContent.put("customer", emailContent);
        postContent.put("password", srtSenha);

        request = RestAssured.given().contentType(ContentType.JSON)
                .header("Authorization", "Bearer "+srtToken).with().body(postContent);

        response = request.when().post(uriBase+Api).prettyPeek();

    }

    public void responseCriarContaStatus (String srtStatusCode) {
        json = response.then().statusLine("HTTP/1.1 200 OK");

Но метод responseCriarContaStatus не работает. Когда я вставляю json = response.then().statusLine("HTTP/1.1 200 OK"); в метод criarConta, код работает.

Как я могу проверить этот запрос в методе responseCriarContaStatus?

1 Ответ

0 голосов
/ 16 апреля 2019

Вы можете установить Response объект static и после определения response вы можете использовать его в другом методе.Я делюсь с вами своим собственным методом, тогда вы можете его отредактировать.statusCode будет 200, если запрос получит успех.

private static Response response;

public void responseCriarContaStatus (String srtStatusCode) {
        JSONObject json = new JSONObject(response.getBody().asString); 
        Asser.asserEquals(srtStatusCode , json.getString("statusCode"));
...