Automating API testing with Postman

Ayme Perez
July 28, 2022

Time often becomes an issue for QA teams. Therefore, having an automated testing process can be very helpful to improve efficiency. Automated testing guarantees quality at all stages of software development, ensuring that changes do not introduce bugs and that the software continues to work as expected. Postman is a tool that allows you to automate API tests through test scripts. It allows you to monitor the API at all times and quickly alert if something is not working properly.

Pre-request Script & Test Script 

A request is the basic unit of Postman. To validate the requests, test scripts are written. Test scripts can be stored in collections, folders, or simple requests within a collection. The test script associated with a collection will be executed after each request on the collection. The test script associated with a folder will be executed after each request for the folder. This allows you to reuse tests executed after each request. The order of execution of the test script will be as follows: collection test script, folder test script, and then request test script.

Pre-request scripts will be used to execute JavaScript code before a request is executed. It allows performing preprocessing, such as setting values of variables, parameters, headers, and body data. To validate the data returned by a request, you can use the pm.response object in a test. When defining the test using the function pm.test, the first parameter is the name of the test and the second parameter will require a function that returns a boolean indicating whether the test passed or failed. The pm.expect syntax is added to the tests to validate that the result obtained is the expected result.


Collections have variables that can be accessed and manipulated by the test script. Variables allow you to store and reuse values in Postman. By storing a value as a variable, you can reference it in the collections, environments, requests, and test scripts for maintainable tests and strong checks.

Global variables allow access to data between collections, requests, test scripts, and environment. Collection variables are available on all requests for a collection and are environment-independent. Environment variables allow you to frame your work in different environments, such as local development versus testing. Data variables come from external CSV and JSON files to define datasets that don't persist beyond request or collection executions. Local variables are temporary variables that are accessed in the request scripts. Local variable values ​​are limited to a single request or collection run and are no longer available when the run completes.

Test Result

When sending to execute a request, the results of the test can be seen under the Test Result tab. The tab header displays the tests executed in total and the number of Pass, Skip, and Fail test results. If the request returns a 200 status code, the test passes.


Keeping an eye on your API can save a lot of trouble when integrating with services to help you save time and reduce costs. Automating API tests will keep the team informed at all times of the API status, and the team will know quickly if something is not working as expected. This will help you to catch any potential issues sooner rather than later.

You may also like:


🍪We've got the cookies. Did you bring the milk?