Mi presentación en #JConfColombia2019. El objetivo de ésta sección es mostrar como realizar pruebas integrales sobre los puntos finales (endpoints) de los servicios REST utilizando Assured, una librería Java para la validación de servicios REST.
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
Pruebas de integración para servicios REST usando Rest Assured - JConf Colombia 2019
1. Pruebas de integración para
servicios REST usando
Rest Assured
JConf Colombia 2019
06 Julio 2019, Centro de Innovación y Negocios Ruta N, Medellín, Colombia
#JConfColombia2019
Eudris Cabrera
@eudriscabrera
2. Eudris Cabrera
Graduado de Ingeniería Telemática en la PUCMM.
Entusiasta de la tecnología y el software libre,
desarrollador Java, instructor ocasional (Java / Linux),
aficionado del béisbol/sóftbol y los bailes latinos.
En el tiempo libre, escribe artículos, realiza charlas,
participa en eventos tecnológicos y ayuda en la revisión
de documentación técnica en el mundo Java y el código
abierto.
5. AGENDA
● Introducción
● Confirguración
● Sintaxis
● Parámetros inicialización (Setup)
● Validación de datos técnicos en la respuesta.
● Pruebas parametrizadas
● Acceso a API Seguras
● Otros interesantes features de REST Assured
6. Es una librería Java que proporciona un lenguaje específico del dominio
(Domain-specific Language / DSL) para escribir pruebas potentes y sostenibles
para los servicios REST.
REST Assured
8. Sintaxis
REST Assured utiliza una API Fluida que es compactible con el desarrollo guidado por comportamiento,
behavior-driven development (BDD). Esto es Given / When / Then, lo que resulta en una prueba que es fácil
de leer y se encarga de todo (configuración, ejecución y verificación) con sólo una sola línea de código.
10. Parámetros de inicialización (Setup)
@Before
public void setup() {
RestAssured.baseURI = "http://localhost";
RestAssured.port = 8080;
}
11. Validación de datos técnicos en la
respuesta
given().
pathParam("sessionId", 101)
.when()
.get("jconfdominicana/sessions/{sessionId}")
.then()
.contentType(ContentType.JSON)
.body("id", equalTo(101))
.body("title", equalTo("Pruebas de Integración para Servicios REST usando REST Assured"));
17. Asuntos Legales
Todas las marcas registradas, así como todos los logotipos, imágenes,
fotografías, audio y vídeos mostrados en esta presentación son propiedad de
sus respectivos propietarios y/o representantes.
Su utilización es solamente para fines ilustrativos.