Bruno Introduction
- Andony Nuñez
- Stephen Fuqua
This document describes investigation of Bruno as an alternative to Postman. Our conclusion at the time: it is close, but not quite ready for Ed-Fi. Primary reason: cannot define authentication at a parent level and have that cascade down to the children.
What is Bruno?
Bruno is an Open Source API Client, aimed to be an alternative to Postman and other tools for API testing, while maintaining similarities and trying to improve the areas that other tools might not cover/support.
Why considering a different API Client?
When exploring test automation options for Meadowlark (/wiki/spaces/BD/pages/22041449), I mentioned some caveats of using Postman for test automation (based on previous experience in developing API test suites such as Admin API's).
The Bruno's Manifesto mentions some of these aspects, the biggest one being the necessity of having the collections in source control and adding easy modification and synchronization between teams.
How to use Bruno?
Bruno functionality consists of three areas: The UI, the Markdown and the Runner
The UI
This is a similar, simpler version of the Postman UI, if you've used Postman before, the UI will feel familiar but with less features.
https://www.usebruno.com/downloads
Markdown (.bru)
VSCode extension for Syntax Highlighting: https://marketplace.visualstudio.com/items?itemName=bruno-api-client.bruno
Bruno has some built in Node libraries and supports adding node packages as dependencies adding a package.json file.
Runner
https://github.com/andonyns/Ed-Fi-AdminAPI/actions/runs/7281562133/job/19842303482
Added Functionality
Assertions
Simplified tests to verify for specific results
Missing Functionality
Folder level scripts
- Can be added as a previous test, but will not be automatically executed.
Step Reuse
Demo
See Register.bru