Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Argentesting 2018 - 503 – SERVICE UNAVAILABLE: La virtualización de servicios como salvavidas

879 views

Published on

Taller ofrecido por Gastón Marichal y Marcos Manicera (ambos de Uruguay) durante la 3ra edición del Argentesting 2018

La interacción con servicios web puede ser todo un desafío durante la construcción de software, aún más si estos son externos y no tenemos control sobre su funcionamiento.

El taller tiene como objetivo introducir al tester en el concepto de virtualización de servicios web y exponer cómo mediante esta actividad se puede sortear ciertos problemas que normalmente aparecen a la hora de diseñar y ejecutar las pruebas de software.

En este taller veremos típicos problemas que pueden surgir con los servicios web y cómo la virtualización puede ser una gran herramienta para hacerles frente en las etapas de desarrollo y testing.

Luego del taller, los participantes contarán con el conocimiento teórico/práctico para virtualizar servicios web utilizando la herramienta SoapUI y poder manipular las respuestas que dicho servicio deberá resolver.

La metodología del taller es una introducción y capacitación teórica de la temática del taller, la presentación de la herramienta y primeros pasos en la virtualización de servicios, un bloque de capacitación práctica guiado por una serie de ejercicios con la herramienta, un cierre teórico donde se presentan recomendaciones y buenas prácticas sobre este tipo de actividades.

Conocimientos previos requeridos
Conocimientos de test y desarrollo de software básicos como protocolo HTTP, Testing de integración, XML, JSON

Requerimientos
Para el taller el participante debe traer su computadora con:

La última versión de SoapUI (edición free) instalada: https://www.soapui.org/downloads/soapui.html
De forma opcional el servidor Apache Tomcat instalado: https://tomcat.apache.org/download-90.cgi
También es recomendable algún editor de texto como NotePad ++

Gastón Marichal
https://www.linkedin.com/in/gmarichal/

Marcos Manicera
https://www.linkedin.com/in/mmanicera/


Published in: Technology
  • Be the first to comment

Argentesting 2018 - 503 – SERVICE UNAVAILABLE: La virtualización de servicios como salvavidas

  1. 1. 503 - Service Unavailable: La virtualización de servicios como salvavidas Gastón Marichal gmarichal@genexusconsulting.com @gamarichal 21 y 22 de mayo, 2018 www.testinguy.org #testinguy @testinguy Marcos Manicera mmanicera@genexusconsulting.com @marcosmanicera
  2. 2. Agenda: • Contexto y motivación • Expectativa Vs. Realidad • Virtualizando nuestro primer servicio • Demos • Ejercicios prácticos • Buenas practicas y recomendaciones
  3. 3. Todo comenzó por un delay…
  4. 4. Situación ideal Servicio n Mi Aplicación Servicio 1 Servicio 2
  5. 5. Situación real Error HTTP 503 Service unavailable Error HTTP 401 Unauthorized Servicio en desarrollo Mi Aplicación Servicios pagos
  6. 6. Consecuencias Retrasos y tiempo ocioso Aumenta el esfuerzo de coordinación Incertidumbre en el desarrollo y testing Menos control y cobertura de pruebas No se puede paralelizar actividades
  7. 7. ¿Cómo romper mi dependencia con servicios externos no disponibles?
  8. 8. Virtualización (Mocking) Replicar el comportamiento de un objeto real creando una copia virtual con sus mismas características. Servicio realCopia virtual
  9. 9. Virtualización (Mocking) Servicio real Comportamiento Características Control total Copia virtual
  10. 10. Virtualización (Mocking) - Ejemplo Servicio real Aplicación
  11. 11. Virtualización (Mocking) - Ejemplo Servicio real Aplicación
  12. 12. Virtualización (Mocking) - Ejemplo Copia virtual Servicio real Aplicación
  13. 13. Creación de un Mock-Service
  14. 14. Creando un Mock-Service
  15. 15. Creando un Mock-Service (SOAP)
  16. 16. Creando un Mock-Service (SOAP)
  17. 17. Creando un Mock-Service (SOAP)
  18. 18. Creando un Mock-Service (SOAP)
  19. 19. Creando un Mock-Service (SOAP) IP : Port / Path
  20. 20. Creando un Mock-Service (SOAP)
  21. 21. Trabajando con las Respuestas
  22. 22. Respuestas estáticas
  23. 23. DEMO Respuestas estáticas
  24. 24. Respuestas estáticas Útiles para contextos simples Varias respuestas distintas por operación Cambiar respuesta fácilmente Permite cambiar el Dispatch Mode
  25. 25. Respuestas estáticas – Dispatch Mode o Alterar la forma que selecciona la respuesta o Programación o Secuencial o Aleatorio
  26. 26. DEMO Dispatch Mode
  27. 27. Un poco más de inteligencia… Respuestas dinámicas Base de DatosArchivosProgramación ByPass
  28. 28. DEMO Respuestas dinámicas
  29. 29. Recomendaciones
  30. 30. ¿Qué debe virtualizarse? ¿Qué tan real será? #1 – Virtualizar lo necesario Priorizar los servicios
  31. 31. #2 – Comenzar de a poco y expandir Crear EvaluarExpandir
  32. 32. Fácilmente reusables Activo del equipo #3 – Reusar y compartir Varios escenarios
  33. 33. #4 – ¡El test de integración es necesario!
  34. 34. #5 – ¡¡No mocks en producción!!
  35. 35. Referencias: https://www.soapui.org/soap-mocking/service-mocking-overview.html http://www.iamjk.com/2015/03/soap-ui-mock-service-redirection.html https://www.soapui.org/soap-mocking/deploying-mock-services-as-war-files.html https://www.softwaretestinghelp.com/soapui-mock-service-and-dynamic-response/ http://groovy-lang.org/documentation.html https://www.tutorialspoint.com/groovy/groovy_overview.htm https://regex101.com/ http://www.regular-expressions.info/tutorial.html https://www.tutorialspoint.com/java/java_regular_expressions.htm
  36. 36. …Y todo esto por un delay!
  37. 37. ¿PREGUNTAS? ¡MUCHAS GRACIAS! 21 y 22 de mayo, 2018 www.testinguy.org #testinguy @testinguy Gastón Marichal gmarichal@genexusconsulting.com @gamarichal Marcos Manicera mmanicera@genexusconsulting.com @marcosmanicera

×