¿Buscas nuestro logo?
Aquí te dejamos una copia, pero si necesitas más opciones o quieres conocer más, visita nuestra área de marca.
Conoce nuestra marca.¿Buscas nuestro logo?
Aquí te dejamos una copia, pero si necesitas más opciones o quieres conocer más, visita nuestra área de marca.
Conoce nuestra marca.dev
Jacobo Da Riva 21/03/2024 Cargando comentarios…
Existen varias aplicaciones orientadas a la ejecución de pruebas de APIs. Una de las más populares, por derecho propio, porque lleva años en el mercado y tiene una comunidad de usuarios detrás muy importante, es Postman, de la que hemos hablado varias veces en este blog: os hemos contado cómo gestionar y construir tus APIs rápidamente y también hemos hablado de Newman y cómo ejecutar colecciones Postman desde línea de comandos.
En el otro lado de esta balanza está Bruno, una aplicación relativamente reciente cuya primera versión fue liberada en octubre de 2022. El motivo de hacer la comparativa entre una herramienta con tanto uso y conocida con una tan reciente es porque Bruno está claramente orientado a ser un reemplazo de código abierto y sin “cosas subidas a la nube sin necesidad” de Postman.
En gran medida, copia características y nomenclatura como forma de allanar el camino de migración desde una herramienta a la otra.
Característica | Postman | Bruno |
---|---|---|
Web del proyecto | Postman | Bruno |
Licencia | Propietario (algunas partes con licencia Apache-2.0) | MIT |
Creación de usuario | Necesario para usar la aplicación | No |
Tipo de cliente | Web, GUI, Consola | GUI |
Sistemas Operativos | Linux, Mac y Windows | Linux, Mac y Windows |
Colaborativo | Sí, asociando usuarios a un proyecto | Sí, con un gestor de Código (Git, Mercurial, SVN…) |
Características de pago | Sí, desde 14$ mes/usuario | No, aunque en un futuro añadirán nuevas características de pago (12$ año) |
Planes | No hay límite para las ejecuciones manuales Básico -> 25 ejecuciones colección/mes Profesional -> 250 ejecuciones colección/mes | No hay límite de ejecuciones por mes. |
Aquí empiezan los puntos a favor de Bruno.
Ambas funcionan de una forma similar. Bruno copia nomenclatura y forma de trabajar porque su intención claramente es ser un sustituto de código abierto y “de cielo despejado” de Postman.
En ambos casos, debemos crear una colección para empezar a trabajar. Bruno nos pide un nombre y un path donde va a guardar los ficheros. Postman además de un nombre, nos pregunta si va a ser una colección privada, colaborativa o empresarial. Aquí aparece la primera gran diferencia:
La estructura de organización de las peticiones vuelve a ser idéntica en ambos casos. Cada colección se compone de carpetas y de peticiones que organizaremos a nuestro gusto.
En ambos casos, podemos configurar entornos de trabajo donde podemos definir variables con valores por defecto. Esto nos permite lanzar una misma colección en diferentes entornos (desarrollo, preproducción, producción, etc.). Estas variables pueden ser de dos tipos: normales o secretas.
Casi toda la funcionalidad es similar. En ambos casos, se pueden configurar parámetros en las peticiones; Postman permite muchos más formatos de autorización en las peticiones; Bruno de momento se limita a Bearer Token, Basic y AWS, permiten enviar cabeceras, indicar un cuerpo de la petición en varios formatos, ejecutar scripts previos a la petición y realizar tests con los datos obtenidos.
Bruno tiene aún algunas funcionalidades bastante básicas en desarrollo y, por tanto, no disponibles aún.
Podemos ejecutar las colecciones en ambas aplicaciones de forma muy parecida. Existen diferencias en cómo se realiza el proceso, siendo más sencillo en Bruno, que por defecto persiste los datos, pero no permite indicar el número de iteraciones que queremos realizar.
Postman tiene como clara ventaja la posibilidad de ejecutar las colecciones de forma iterativa, pudiendo realizar la misma secuencia de peticiones múltiples veces desde el entorno gráfico.
Ambas aplicaciones usan JavaScript. Si bien el entorno de Postman es más completo, pues tiene una autoayuda que te sugiere funciones y variables disponibles, algo que se echa mucho de menos en Bruno.
Ambas aplicaciones tienen un sistema de ejecución de colecciones por línea de comandos. En el caso de Postman se hace mediante Newman y en el caso de Bruno, mediante Bruno-cli. En ambos casos nos permite integrar nuestras pruebas de APIs dentro del proceso de CI/CD.
No cabe duda de que Postman es una aplicación más completa y mucho más madura, con algunas utilidades como la monitorización que no están disponibles en Bruno. Bruno tiene algunas deficiencias aún para llegar al mismo nivel en cuanto a la ejecución de pruebas y a las distintas características que podemos necesitar a la hora de probar algunas API/REST.
En la parte del trabajo del día a día, Bruno es más ligero y está orientado al trabajo en repositorios de código (Git, Mercurial…) que es algo que ha perdido Postman con su filosofía de “todo en la nube”. El hecho de no tener que crearnos un usuario para poder ejecutar pruebas de nuestra API es también un plus a favor de Bruno.
Si estás pensando en migrar de Postman a otra aplicación, valora Bruno siendo consciente de que tal vez te falte alguna funcionalidad que estás necesitando. Échale un vistazo y dedícale tiempo antes de tirarte a la piscina. Si lo que quiere hacer es empezar de cero con pruebas básicas de una API, Bruno es una alternativa realmente buena y que merece la pena.
Los comentarios serán moderados. Serán visibles si aportan un argumento constructivo. Si no estás de acuerdo con algún punto, por favor, muestra tus opiniones de manera educada.
Cuéntanos qué te parece.