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.
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.
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.
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
COMPARTIR ESTE ARTÍCULO
Correo: howdy@techaid.co
Teléfono: +1 (888) 280-0575
Copyright © 2020 TechAID Solutions, All rights reserved.
¡Prometemos que no lo bombardearemos con tantos correos electrónicos!
¡Prometemos que no lo bombardearemos con tantos correos electrónicos!