Ben Weese

Testing with Postman: Lodash

Another javascript library built into Postman is Lodash.

Looping Arrays with Lodash

Sometimes you will want to iterate through an array. Maybe your response itself is an array. Luckily there is an easy for loop that can be used. This is use for where you see [] in the Json as that means what is in the square brackets is an array. Here we use the tool Lodash. It is already included with postman and can be called by using the _ character. If you wish to use the more recent version of Lodash you should have a

var _= require('lodash')


but this is not necessary as the earlier version works just fine.

var jsonData = pm.response.json();
//Here we go through ever piece of data and check that it matches the data type set by the API.
pm.test("Has correct schema", function() {
    //Since there will be multiple plans we want to go through each plan available.
    _.each(jsonData, (data) => {
        pm.expect(data.str).to.be.a("string", "str not a string and instead is " + data.str);
         pm.expect(data.numArray[0]).to.be.a("number", "numArray[0] not a number and instead is " + data.numArray[0]");
         pm.expect(data.numArray[1]).to.be.a("integer", "numArray[1] not a integer and instead is " + data.numArray[1]");
         pm.expect(data.bool).to.be.a("boolean", "bool not a boolean and instead is " + data.bool");
    }
});

Links

Postman Quick Reference Guide
Chai Assertion Library
Regex Cheat Sheet
Postman: The Complete Guide on Udemy

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.