Complete Course
API Testing with Bruno
Test a real REST API without writing a framework: build a git-versioned Bruno collection that creates, reads, updates, and deletes behind a login, with environments, data-driven runs, and a CLI that gates your pipeline.
~4 hours of content
Course Content
15 comprehensive lessons covering everything you need to know
Introduction
Introduction
Course Structure
Learn how the course is organized and make the most of the content.
Introduction
Prerequisites
Systems and knowledge required to complete the course.
Introduction
Getting to know the application under test
Learn about the Emoji API that you will test throughout the course.
Lesson
Lesson 1Fork, clone, and create your Bruno collection
Fork and clone the repository, start the Emoji API, and create a collection that lives in git.
Reading data
Lesson
Lesson 2Your first request
Send a GET request, read the response, and check it with declarative assertions.
Lesson
Lesson 3Environments and variables
Stop hard-coding the host, and learn which variable wins when two share a name.
Lesson
Lesson 4Test scripts
Check every item of a response with Chai, and know when a script earns its place.
Lesson
Lesson 5Pagination and filters
Test page, limit, category, and search, without letting an empty response pass.
Creating, updating, and deleting
Lesson
Lesson 6Authentication
Log in, keep the password out of git, and send a bearer token with every write.
Lesson
Lesson 7Creating emojis
Send a POST with a JSON body, check the 201, and keep the new id for later.
Lesson
Lesson 8Updating emojis
Replace an emoji with PUT, change one field with PATCH, and tell the two apart.
Lesson
Lesson 9Deleting emojis
Delete an emoji, prove it is gone, and clean up after your own tests.
Lesson
Lesson 10Chaining requests
Run a whole create, read, update, and delete lifecycle in order, as often as you like.
Beyond the happy path
Lesson
Lesson 11Error scenarios
Cover the 400, 401, 404, and 409 cases in a folder, with a shared check written once.
Lesson
Lesson 12Data-driven requests
Throw many inputs at the emoji rule from CSV files with the Bruno CLI.
Lesson
Lesson 13Schema validation
Validate the shape of every emoji against a JSON Schema in one check.
Running from the command line and CI
Lesson
Lesson 14The Bruno CLI
Run the collection from the terminal, with tags, reports, and an exit code CI can read.
Lesson
Lesson 15Running the collection on GitHub Actions
Start the API in the job, pass the password as a secret, and let a failing check turn the build red.
Bonus & Conclusion
Bonus
Bonus: Migrating from Postman
Import a Postman collection and environment, and review what needs rework.
Bonus
Bonus: Bruno with AI
Draft and review requests with an AI assistant, and verify everything it writes.
Conclusion
Congratulations!
You've completed the API Testing with Bruno course!