Bird
Raised Fist0
Postmantesting~10 mins

Creating mock servers in Postman - Test Execution Walkthrough

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Test Overview

This test checks if a Postman mock server is created successfully and responds with the expected mock data when a request is sent.

Test Code - Python requests + assert
Postman
import requests

# Step 1: Create a mock server via Postman API
mock_server_creation_url = "https://api.getpostman.com/mocks"
headers = {"X-Api-Key": "{{POSTMAN_API_KEY}}", "Content-Type": "application/json"}

mock_server_payload = {
    "mock": {
        "name": "Test Mock Server",
        "collection": {
            "uid": "{{COLLECTION_UID}}"
        }
    }
}

response_create = requests.post(mock_server_creation_url, json=mock_server_payload, headers=headers)
assert response_create.status_code == 200, f"Failed to create mock server: {response_create.text}"

mock_url = response_create.json()["mock"]["mockUrl"]

# Step 2: Send a GET request to the mock server
response_mock = requests.get(mock_url + "/test-endpoint")

# Step 3: Verify the response status and body
assert response_mock.status_code == 200, f"Unexpected status code: {response_mock.status_code}"
expected_body = {"message": "Hello from mock server!"}
assert response_mock.json() == expected_body, f"Response body mismatch: {response_mock.json()}"
Execution Trace - 4 Steps
StepActionSystem StateAssertionResult
1Send POST request to Postman API to create a mock serverPostman API receives request to create mock server with given collection and nameCheck response status code is 200 (OK)PASS
2Extract mock server URL from creation responseMock server URL is available for sending requestsPASS
3Send GET request to mock server endpoint '/test-endpoint'Mock server receives request and returns predefined mock responseVerify response status code is 200PASS
4Verify response JSON body matches expected mock dataResponse body contains {"message": "Hello from mock server!"}Assert response JSON equals expected bodyPASS
Failure Scenario
Failing Condition: Mock server creation fails or returns error status code
Execution Trace Quiz - 3 Questions
Test your understanding
What is the first step in creating a mock server in this test?
ASend a POST request to Postman API to create the mock server
BSend a GET request to the mock server endpoint
CVerify the response JSON body
DExtract the mock server URL from the response
Key Result
Always verify the mock server creation response before sending requests to ensure the mock environment is ready and valid.

Practice

(1/5)
1. What is the main purpose of creating a mock server in Postman?
easy
A. To monitor live API traffic
B. To deploy the real API to production
C. To write code for the backend server
D. To simulate API responses without needing the actual backend

Solution

  1. Step 1: Understand what a mock server does

    A mock server simulates API responses so developers can test without a real backend.
  2. Step 2: Compare options with this purpose

    Only To simulate API responses without needing the actual backend describes simulating responses without the actual backend.
  3. Final Answer:

    To simulate API responses without needing the actual backend -> Option D
  4. Quick Check:

    Mock server purpose = simulate API responses [OK]
Hint: Mock servers simulate, not deploy or write backend code [OK]
Common Mistakes:
  • Confusing mock servers with real backend deployment
  • Thinking mock servers monitor live traffic
  • Assuming mock servers generate backend code
2. Which of the following is the correct step to create a mock server in Postman?
easy
A. Select a collection, then click 'Mock Server' and configure settings
B. Write backend code and deploy it to Postman
C. Create a new environment and add variables
D. Run the collection in the runner without any setup

Solution

  1. Step 1: Identify how to create a mock server

    In Postman, mock servers are created from collections by selecting 'Mock Server' option.
  2. Step 2: Check which option matches this process

    Select a collection, then click 'Mock Server' and configure settings correctly describes selecting a collection and clicking 'Mock Server'.
  3. Final Answer:

    Select a collection, then click 'Mock Server' and configure settings -> Option A
  4. Quick Check:

    Create mock server = select collection + 'Mock Server' [OK]
Hint: Mock servers start from collections, not environments or code [OK]
Common Mistakes:
  • Confusing environment setup with mock server creation
  • Thinking mock servers require backend code
  • Trying to run collections without mock server setup
3. Given this Postman mock server setup:
{
  "method": "GET",
  "url": "/user/123",
  "response": {
    "status": 200,
    "body": "{\"id\":123, \"name\": \"Alice\"}"
  }
}

What will the mock server return when a GET request is made to /user/123?
medium
A. HTTP 404 Not Found error
B. HTTP 200 with body {"id":123, "name": "Alice"}
C. HTTP 500 Internal Server Error
D. No response because URL is incorrect

Solution

  1. Step 1: Analyze the mock server response setup

    The mock server is set to respond to GET /user/123 with status 200 and JSON body {"id":123, "name": "Alice"}.
  2. Step 2: Match the request and response

    A GET request to /user/123 matches the mock setup, so it returns status 200 and the JSON body.
  3. Final Answer:

    HTTP 200 with body {"id":123, "name": "Alice"} -> Option B
  4. Quick Check:

    Matching URL + method = 200 + JSON body [OK]
Hint: Match method and URL exactly to get mock response [OK]
Common Mistakes:
  • Assuming 404 if unsure about URL matching
  • Confusing status codes for mock responses
  • Ignoring the method type in mock setup
4. You created a mock server but when sending requests, you always get a 404 error. What is the most likely cause?
medium
A. The request method is POST but mock expects GET
B. The mock server is down due to network issues
C. The mock server URL does not match the request URL
D. The collection has no example responses defined

Solution

  1. Step 1: Understand 404 in mock server context

    A 404 means the mock server did not find a matching request URL and method.
  2. Step 2: Identify common causes for 404

    If the request URL does not exactly match the mock server URL, 404 occurs. This is the most common cause.
  3. Final Answer:

    The mock server URL does not match the request URL -> Option C
  4. Quick Check:

    404 error = URL mismatch [OK]
Hint: Check exact URL match to fix 404 errors on mock servers [OK]
Common Mistakes:
  • Assuming network issues cause 404
  • Forgetting to add example responses in collection
  • Ignoring HTTP method mismatch
5. You want to create a mock server that returns different responses based on query parameters. Which approach should you use in Postman?
hard
A. Create multiple example requests in the collection with different query parameters and responses
B. Write JavaScript code in the mock server to handle query parameters
C. Use environment variables to change the mock server URL dynamically
D. Create separate mock servers for each query parameter value

Solution

  1. Step 1: Understand how Postman mock servers handle query parameters

    Postman mock servers match requests to example requests including query parameters to return the correct response.
  2. Step 2: Identify the best way to handle different query parameters

    Creating multiple example requests with different query parameters and responses allows the mock server to return varied responses.
  3. Final Answer:

    Create multiple example requests in the collection with different query parameters and responses -> Option A
  4. Quick Check:

    Multiple examples = varied responses by query [OK]
Hint: Use multiple examples with query params for varied mock responses [OK]
Common Mistakes:
  • Thinking mock servers run custom code
  • Trying to change mock URL with environment variables
  • Creating many mock servers instead of examples