Postman is a tool that I’ve been meaning to learn for years. I’m not sure when I first heard of it, but I’m pretty sure it was back when it was just a Chrome extension. So it might have been almost ten years ago. I didn’t really get serious about it until 2019, at which point I was doing enough REST API work that it seemed like I should take some time and see what all the fuss was about. At that time, I would have primarily been using Fiddler for API testing. Fiddler’s Composer tab is pretty good for basic API testing, but you can do a lot more with Postman.
Alas, when I tried setting up Postman on my development VM in 2019, I couldn’t get it to work. It would just hang every time I launched it. I went back and forth with support for a while, and tried a number of things, but I just couldn’t get it working. So I gave up and went back to Fiddler.
But I switched to a new VM a while back, so I thought I’d give Postman another try. I successfully installed it on my VM at some point last year, and poked around a bit, but never had time to actually learn it. So last week I had a bit of free time and decided to spend some of it figuring out Postman.
- Introducing Postman – This video is from Dave Fancher, and was created in 2019, so it’s a little out of date, but still useful. It’s about 90 minutes.
- Postman Essential Training – This one is by Kristin Jackvony, and is from 2020, so it’s a little closer to up-to-date. It’s also about 90 minutes. It covers some more advanced testing stuff, like the collection runner and Newman.
All three of these courses are old enough that they predate the new v8 Postman user interface, so it can occasionally be a little challenging to figure out where something is in the current version vs. where it was in 2019 or 2020. But it’s not too bad.
So I think I now have a pretty good grounding in the basics. Of course, now I’ve gotten busy again, and haven’t gotten back to Postman in the last few days. But I did at least set up a collection/workspace for one of the APIs that I work on, by importing the Swagger JSON for it. I need to clean it up a bit, but I can certainly use it for ad-hoc testing now.
Next, I need to find the time to maybe write some test scripts. My current “smoke tests” for the API are in C#. I have a number of console programs that exercise different aspects of the API, to test out different stuff. An I have a C# script that I run in LINQPad after every deployment that just does some quick non-destructive tests, to make sure the deployment didn’t break anything obvious. But I’d really like to have some more structured and exhaustive tests that I can run. I’m not 100% sure that I want to commit to Postman for that, since it does add some complexity. But it might be worth it. It was worth spending several hours learning about it, either way, and I think I’ll be using it for a lot of my ad-hoc testing now.