POR Manuel Marinez 07/16/2020 0

Qué es un API? Y cómo puede mejorar tus pruebas de Software?

Una API (interfaz de programación de aplicaciones) es un conjunto de herramientas que se utilizan para crear software y también hacer que se comuniquen entre sí. La forma en que se hace esto es mediante REST para formatear la carga útil de información solicitada por el cliente con un formato de texto estándar como JSON, XML ó raw text, luego, los datos se envían al servidor con métodos HTTP como GET, POST, PUT y DELETE para nombrar algunos, después el servidor interpreta los datos, realiza la acción solicitada y finalmente envía los datos al cliente.

 

API-Testing


Esta definición pude ser muy técnica, pero,  me tomó un tiempo reunirlo todo, hay demasiadas definiciones buenas y extendidas de lo que es una API. Sin embargo, todo se puede resumir en una analogía que probablemente haya visto en un video de youtube u otro blog.

 

“Tú  (el cliente) está en un restaurante y deseas pedir comida a la cocina (el sistema) aquí es cuando el camarero (API) entra para llevar y entregar su pedido a la cocina, luego la cocina prepara su pedido y el el mesero regresa con la orden de comida solicitada”.

 

Un ejemplo real de lo anterior, es cuando queremos iniciar sesión en una aplicación web como Gmail.

 

API-Testing

 

Llenamos los campos obligatorios, como la dirección de correo electrónico y la contraseña, luego la API lleva esa información al sistema; el sistema valida si el correo electrónico y la contraseña se almacenan en la base de datos, y, según el resultado de la validación, la API regresa con el desvío de la página web acceso al usuario. Un mensaje que dice que la acción no se pudo completar porque el usuario no está registrado, el nombre de usuario no es válido o la contraseña es incorrecta. Las API se encuentran bajo las operaciones encubiertas,  que no son visibles para el usuario mientras está en la GUI (interfaz gráfica de usuario).

 

Familiarizarse con las API y su funcionamiento ofrece una gran cantidad de ventajas, desde construir y optimizar su software hasta saber cómo probar las características clave que son el principal interés de la empresa. Esta parte es importante porque las API se ven como parte de la capa empresarial de la arquitectura de software.

 

Como software testers, podemos ampliar nuestro alcance de pruebas de una manera significativamente más eficiente, ya que no hay interacción GUI, los escenarios de prueba se pueden ejecutar y los resultados se pueden recopilar mucho más rápido.

 

Por Ejemplo:

Escenario de prueba: Validar entrada de búsqueda.

 

API

 

Casos de pruebas:

 

  • Verifique la entrada de búsqueda con un campo vacío.
  • Verifique la entrada de búsqueda con un carácter especial.
  • Verifique el límite de caracteres en la entrada de búsqueda.
  • Verifique la entrada de búsqueda con una expresión SQL.
  • Verifique la entrada de búsqueda con etiquetas HTML.


Como puede ver, este escenario no es diferente de lo que podríamos hacer en una GUI, pero con el giro de que no tenemos que abrir un navegador web para acceder a la URL , busque la  entrada específica de búsqueda que necesita ser probada y luego aplique los casos de prueba. Todo esto se puede hacer simplemente enviando una solicitud GET con la URL correcta y los parámetros o variables deseados.

 

Para realizar las pruebas, hay varias herramientas que se pueden usar desde un terminal del sistema operativo hasta un software dedicado como Postman o SoapUI. Hablaré de  estas herramientas en la parte 2, donde analizaré sus características, ventajas y desventajas.

 

 Consulta más tips acerca de herramientas de software testing que te ayudarán en tu actividad diaria.

 

Autor: Manuel Mariñez
Software Testing Engineer  TechAID
Twitter: MarinezBay
Blog: dev.to/mmarinez20

 

VOLVER

COMPARTIR ESTE ARTÍCULO

[addtoany]

Leave a Reply

Your email address will not be published. Required fields are marked *

OTRAS PUBLICACIONES QUE TE PUEDEN GUSTAR

El Verdadero Costo de Contratar Personal para el Equipo de QA

POR Maria Tejeda
05/18/2021 0

API- Herramientas de prueba: Una guía basada en ejemplos

POR Manuel Marinez
04/08/2021 1