100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Testing

Postman Quick Reference

A condensed cheat sheet of Postman variable scopes, common pm.* scripting snippets, and Newman CLI commands for everyday use.

Practical PostmanBeginner7 min readJul 10, 2026
Analogies

Variables and Scopes at a Glance

Postman has five variable scopes, resolved narrowest to widest: local (set within a single script's execution), data (from a CSV/JSON file during a collection run), environment (tied to the active environment like dev or prod), collection (shared across every request in a collection regardless of environment), and global (available across every collection in the workspace). Reach for environment variables for anything that changes per deployment target, and collection variables for anything that should stay constant everywhere.

🏏

Cricket analogy: The five variable scopes are like a fielding plan that narrows from a specific ball's field placement, to the over's strategy, to the innings plan, to the match strategy, to the team's season-long philosophy - each level overrides the one above it only where it's explicitly set.

Common pm.* Scripting Snippets

The pm.* API is what you'll reach for constantly: pm.environment.set/get for the active environment, pm.collectionVariables.set/get for values shared across a run, pm.response.json() to parse the body, pm.response.to.have.status(200) for status assertions, and pm.expect(value).to.eql(expected) for Chai-based value assertions inside a pm.test() block. Console output via console.log() is visible in the Postman Console (View > Show Postman Console), which is the fastest way to debug a script that isn't behaving as expected.

🏏

Cricket analogy: pm.test() wrapping an assertion is like a review being confined to the specific delivery in question - it isolates one check (did this ball hit the stumps) rather than judging the whole innings at once.

javascript
// --- Quick-reference pm.* snippets ---

// Read / write environment and collection variables
pm.environment.set("userId", "u_123");
const userId = pm.environment.get("userId");
pm.collectionVariables.set("authToken", "eyJhbGciOi...");

// Parse and assert on a response
const body = pm.response.json();

pm.test("Status code is 200", () => {
    pm.response.to.have.status(200);
});

pm.test("Response time is under 500ms", () => {
    pm.expect(pm.response.responseTime).to.be.below(500);
});

pm.test("userId matches expected value", () => {
    pm.expect(body.userId).to.eql("u_123");
});

// Debug output, visible in View > Show Postman Console
console.log("Response body:", body);

Newman CLI Quick Commands

Once a collection and environment are exported as JSON, Newman runs them from any terminal or CI job with newman run collection.json -e environment.json, and adding --reporters cli,html,junit produces console output alongside HTML and JUnit report files that most CI dashboards can ingest directly. Passing -d data.csv iterates the collection once per row of a data file, and --bail stops the run immediately on the first test failure, which is useful for fast-failing a pipeline instead of waiting for every request to finish.

🏏

Cricket analogy: Running newman with --bail stopping on the first failure is like a match being called off the instant a serious safety issue is spotted, rather than playing out the full quota of overs regardless.

Keyboard shortcuts worth memorizing: Ctrl/Cmd+S to save a request, Ctrl/Cmd+Enter to send it, Ctrl/Cmd+Alt+C to open the Postman Console, and Ctrl/Cmd+/ to open the shortcut palette itself if you forget the rest.

Never commit an exported environment.json file that contains real secrets to version control - even though Postman masks "secret" type variables in the UI, the exported JSON file stores their raw values in plain text unless you explicitly strip them before exporting.

  • Variable scopes resolve narrowest to widest: local, data, environment, collection, global.
  • pm.environment and pm.collectionVariables are the two most commonly used variable APIs.
  • pm.response.json(), pm.response.to.have.status(), and pm.expect().to.eql() cover most assertion needs.
  • console.log() output appears in the Postman Console (View > Show Postman Console).
  • newman run collection.json -e environment.json is the core command for headless runs.
  • --reporters cli,html,junit and -d data.csv are the most useful Newman flags for CI and data-driven runs.
  • Exported environment.json files store secret values in plain text unless explicitly stripped first.

Practice what you learned

Was this page helpful?

Topics covered

#Testing#PostmanStudyNotes#TestingQA#PostmanQuickReference#Postman#Quick#Reference#Variables#StudyNotes#SkillVeris