Saltar al contenido
SDETRole
SDETRole

Testing de APIs

Generador de assertions de API

Genera assertions de Playwright, Postman, REST Assured o Cypress.

Se ejecuta íntegramente en tu navegador Sin registro

Sample response

Fields · 0 of 0 selected

Fields from the response appear here. Arrays are listed once (for length checks) and walked through their first element.

Generated assertions

Acerca de esta herramienta

Convertir una respuesta de ejemplo en assertions es un trabajo mecánico: recorrer el JSON, escribir una expectativa por campo, acertar con la sintaxis de acceso para claves con guiones o puntos y usar el matcher adecuado para nulls y arrays. Este generador lista todos los campos de la respuesta (los arrays una vez, para comprobar su longitud, y a través de su primer elemento), te deja marcar los que importan y genera código para Playwright (await expect(response).toBeOK() y expect(body.user.id).toBe(42)), Postman (pm.test con pm.expect), REST Assured (then().statusCode(200).body("user.id", equalTo(42))) y Cypress (cy.request con .its()). Elige valores exactos para los campos estables o comprobaciones solo de tipo para valores que cambian entre ejecuciones, como ids y marcas de tiempo.

Cómo usarla

  1. Pega una respuesta JSON de ejemplo e indica el método, la URL y el estado esperado.
  2. Marca los campos sobre los que hacer assertions. Los diez primeros vienen seleccionados; usa “All” o “None” para cambiarlo rápidamente.
  3. Elige un framework y assertions de valor exacto o solo de tipo, y copia el código generado en tu test.

Preguntas frecuentes: Generador de assertions de API

¿Debo comprobar valores exactos o solo tipos?

Comprueba valores exactos en los campos que controla tu test o que son estables (estado, rol, moneda). Usa comprobaciones de tipo para valores generados o dependientes del tiempo (ids, marcas de tiempo, tokens); de lo contrario, el test se romperá en cada ejecución.

¿Por qué REST Assured compara los decimales como 12.5f?

Por defecto, el JsonPath de REST Assured devuelve los decimales como Float, y el equalTo(12.5) de Hamcrest con un Double no coincidiría con un Float. Si tu proyecto configura JsonPathConfig para devolver Double o BigDecimal, cambia el literal en consecuencia.

¿Por qué el código de Cypress añade failOnStatusCode: false?

cy.request hace fallar el test ante respuestas 4xx y 5xx por defecto. Cuando esperas un estado de error, esta opción permite que la petición termine para que puedas hacer assertions sobre el estado y el body.

Escribe para buscar en todo SDETRole.

Búsqueda de texto completo con Pagefind · se ejecuta en tu navegador Abrir la página de búsqueda →