• 26 de mar de 2025

API Testing: ¿Qué es un Schema?

Una de las validaciones y uno de los conceptos más importantes a mi criterio: Schemas

Cuando hablamos de testear y trabajar con APIs, uno de los conceptos fundamentales es el de"schema". Si alguna vez te encontraste con respuestas JSON o XML y quisiste asegurarte de que tienen la estructura correcta, entonces los schemas son una herramienta clave para vos. En este post, vamos a ver qué es un schema, por qué es importante en las pruebas de APIs y cómo podés validarlo con herramientas como Rest Assured.

¿Qué es un Schema?

Un schema es una estructura que define la forma y las reglas de los datos en una API. En otras palabras, es un "molde" que indica qué campos debe tener una respuesta, qué tipo de datos se espera en cada uno y cuáles son obligatorios u opcionales.

Por ejemplo, si una API devuelve información de usuarios, el schema podría especificar que el campo id debe ser un número, name una cadena de texto y email una dirección válida.

Ejemplo de schema en JSON Schema:

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": { "type": "integer" },
    "name": { "type": "string" },
    "email": { "type": "string", "format": "email" }
  },
  "required": ["id", "name", "email"]
}

Este schema indica que toda respuesta JSON debe contener un id, un name y un email, y que deben cumplir con los tipos especificados.

¿Para qué sirve en API Testing?

Validar el schema de las respuestas de una API es clave para detectar errores antes de que afecten a los usuarios. Algunas ventajas de hacer schema validation incluyen:

  • Asegurar la consistencia de los datos: Si una API cambia su estructura sin avisar, las pruebas con schema validation pueden detectar estos cambios automáticamente.

  • Evitar errores en integraciones: Aplicaciones que consumen la API pueden fallar si el formato de respuesta cambia sin previo aviso.

  • Mejorar la calidad del servicio: Validar que los datos cumplen con un formato esperado ayuda a garantizar que la API entrega la información correcta y estructurada.

Validación de Schema con Rest Assured

Si usás Rest Assured para automatizar pruebas de APIs en Java, podés validar schemas fácilmente.

Ejemplo de validación de schema en un test de Rest Assured:

import static io.restassured.module.jsv.JsonSchemaValidator.matchesJsonSchemaInClasspath;

@Test
public void validarSchemaDeUsuario() {
    given()
    .when()
        .get("https://api.ejemplo.com/users/1")
    .then()
        .assertThat()
        .body(matchesJsonSchemaInClasspath("user-schema.json"));
}

En este ejemplo, user-schema.json debe estar en la carpeta resources de tu proyecto y contener la definición del schema JSON esperado. Si la respuesta no coincide con el schema, el test fallará.

Conclusión

Validar el schema en API Testing es una práctica esencial para asegurar la calidad de los datos y evitar problemas en integraciones. Herramientas como JSON Schema y Rest Assured facilitan este proceso y ayudan a detectar errores rápidamente.

Si querés aprender más sobre automatización de pruebas de APIs, te invito a revisar mi curso de API Automation con Rest Assured, donde explico estas y muchas otras técnicas en detalle.

¿Vos ya usás schema validation en tus pruebas? ¡Contame en los comentarios!

Un poco

Sobre mi

Consultor privado e instructor en QA

Más de 16 años en el mercado, trabajando como consultor QA privado para empresas de Nueva Zelanda y Australia en proyectos de gran impacto y siempre a la vanguardia.

Lo que enseño viene de mi experiencia 🧑🏻‍💻

  • Entrega gratuita por correo electrónico

La guía 2025 para conseguir trabajo en Testing de Software

  • Descarga digital
  • 1 archivo

Conseguir trabajo en Testing de Software, en este 2025, presenta desafíos de los que necesitás enterarte YA mismo. En esta guía exclusiva de Free Range Testers vuelco en el tono informal de siempre, mis más de 16 años de experiencia y sobre todo lo relacionado a las nuevas tendencias que van a hacer la gran diferencia a la hora de buscar trabajo. ¡Nos vemos en el libro!

Suscríbete para estar informado de las actividades de Free Range Testers.

0 comments

Sign upor login to leave a comment