Radio-Canada’s QA team is part of the company’s Digital Media organization that builds and manages consumer websites and applications, including a video streaming platform for francophone content. Nearly all of the APIs that they work with are built by in-house developers and are primarily used to connect internal systems, route data to the company’s consumer websites and applications, and stream video. Some APIs are only used by Radio-Canada’s engineers, while others are shared with fellow CBC teams.
Due to heavy demand, web and app dataflows are further segmented between two distinct APIs. One syncs inbound data to the CMS database; the other focuses on the presentation layer and makes sure that the right data, assets, and content appear in the correct place on the company’s various digital properties. Radio-Canada’s QA team focuses heavily on testing the presentation API due to its critical role in the consumer experience.
Sometimes those experiences have critical implications. For example, Radio-Canada broadcasts real-time results from major events—such as elections or the Olympics—and their digital platforms must present such information flawlessly.
Getting up and running in Postman
Prior to adopting the Postman API platform, the QA team relied on a browser to check each endpoint’s payload and to identify any issues that might be happening. This process was cumbersome and error-prone, and the team needed a better way to streamline testing and improve results. At the time, a few developers were using Postman for collaboration during the development cycle, and so the QA team decided to explore the platform for their own workflows.
One of the biggest advantages for the team has been Postman’s ease of use. Although quality assurance is a technical function, QA engineers may not have had deep experience with writing code. Postman Collections make it easy to organize requests and endpoints based on a logical file-folder structure that enables QA engineers to quickly find an endpoint, make a call, and view a response. Postman features make it easier to inspect the response body—with automatic language detection, link and syntax highlighting, search, and text formatting options.
Getting up to speed on Postman was also straightforward. The QA team can share a Postman Collection with other teams or onboard new team members to a shared team workspace with ease. The POST/CON workshop webinar series was especially helpful as the videos walk new users through basic skills to advanced features and usage strategies. Radio-Canada team members still refer to the material from time to time when they need help or want to learn something new.
Postman offers really helpful tutorials for new users, especially for those who don’t have an extensive programming background.
Within a few months, Radio-Canada’s QA team was up and running on Postman. Different team members work on different aspects of the organization’s digital products, including media players, video streaming, and help desk. The team initially focused on using Postman to improve two key QA workflows that touch all products: monitoring and smoke testing.
Automated monitoring of API health
Postman monitoring gives the team greater visibility into an API’s responses, availability, and performance so that they can take immediate action when issues arise. To ensure the health of their APIs in production, the QA team sets up nightly monitoring runs on their collections to gather metrics and receive alerts to any new issues. Each morning, Postman’s Slack integration feeds a notification of the monitor-run results into the team’s Slack channel. This allows for easy discussion and collaboration when a problem arises. Some on the team use Postman monitors to warm up sleeping systems by pinging endpoints at specified intervals.
By using Postman to monitor API health, the team has been able to automate a time-consuming manual workflow. With a basic monitoring run completed first thing in the morning, the team is free to focus on more extensive tests that involve complex business rules.
Using Postman to monitor our APIs is a huge step forward. It gives me confidence that our endpoints are working and I can then focus on more elaborate tests.
Smoke testing on demand
Radio-Canada releases updates every week. Prior to using Postman, smoke tests were run by developers using Visual Studio and it was difficult to loop in the QA team when needed. This typically happened just a couple of days prior to the release, which gave only a short window for testing and bug-fixing.
Today, the QA team manages the endpoints in Postman Collections, which makes it easier to run smoke tests at any time during the weekly cycle. The team uses environment variables to switch between development, staging, and production as they run through various test scenarios. Often, they test multiple scenarios using a single endpoint. For example, they may use one story ID to check numerous web pages to ensure that the page title is correct, the breadcrumbs are in place, an ad is displayed, and/or a particular word is present in the payload. Postman has made this level of detail easier to manage, resulting in a higher level of confidence in the user experience.
Running smoke tests on Postman helps us catch critical issues before they go to production, which results in a higher-quality release.
More opportunities for QA testing in Postman
With a myriad of details, scenarios, and business rules to test each week, Radio-Canada is exploring more ways to use Postman in its QA workflows. One major focus area for the team is using scripts in Postman to automate more repetitive tests, such as regression testing. This will enable the team to move faster and be more responsive to code changes, which in turn will help developers stay productive.
Radio-Canada is also looking to standardize API collaboration in Postman. Although Postman usage is growing at Radio-Canada—and many DevOps engineers are also using the platform—most developers still use GFS to share files. This means that QA testers need to manually copy changes and review comments from a master file in a different system, and then update their own collections on Postman.
As the QA team moves forward in working with Postman more, they anticipate that the platform will help the entire organization deliver higher-quality releases with greater confidence.