Sobes.tech
Junior — Middle

Explique o que se entende por especificação no contexto do REST Assured e como ela é aplicada na testagem de APIs.

sobes.tech IA

Resposta da IA

No contexto do REST Assured, a especificação é um conjunto predefinido de configurações e parâmetros para pedidos HTTP e verificações de respostas, que pode ser reutilizado nos testes. A especificação inclui a URL base, cabeçalhos, parâmetros, bem como os códigos de resposta esperados e esquemas.

A utilização da especificação permite padronizar e simplificar a escrita de testes de API, evitando a duplicação de código. Por exemplo, pode-se criar uma especificação com configurações comuns para todas as requisições a um determinado serviço e depois usá-la em diferentes testes.

Exemplo em Java:

import static io.restassured.RestAssured.*;
import io.restassured.builder.RequestSpecBuilder;
import io.restassured.specification.RequestSpecification;

RequestSpecification spec = new RequestSpecBuilder()
    .setBaseUri("https://api.example.com")
    .addHeader("Authorization", "Bearer token")
    .build();

given()
    .spec(spec)
.when()
    .get("/users")
.then()
    .statusCode(200);

Assim, a especificação ajuda a gerir de forma centralizada as configurações das requisições e melhora a legibilidade e manutenção dos testes.