Bird
Raised Fist0
Postmantesting~15 mins

Using mock server URL in Postman - Build an Automation Script

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
Verify API response using Postman mock server URL
Preconditions (2)
Step 1: Open Postman
Step 2: Create a new GET request
Step 3: Set the request URL to the mock server URL for the /user endpoint
Step 4: Send the request
Step 5: Verify the response status code is 200
Step 6: Verify the response body contains the expected user data
✅ Expected Result: The response status code is 200 and the response body matches the predefined mock user data
Automation Requirements - Postman test scripts
Assertions Needed:
Response status code is 200
Response body contains expected user data fields and values
Best Practices:
Use pm.response.to.have.status for status code assertion
Use pm.expect with JSON parsing for response body validation
Keep test scripts simple and readable
Use environment variables for mock server URL
Automated Solution
Postman
pm.test('Status code is 200', () => {
    pm.response.to.have.status(200);
});

pm.test('Response body has expected user data', () => {
    const jsonData = pm.response.json();
    pm.expect(jsonData).to.have.property('id');
    pm.expect(jsonData).to.have.property('name', 'John Doe');
    pm.expect(jsonData).to.have.property('email', 'john.doe@example.com');
});

The first test checks if the response status code is 200, which means the request was successful.

The second test parses the JSON response body and verifies that it contains the expected user data properties: id, name with value 'John Doe', and email with value 'john.doe@example.com'.

Using pm.response.to.have.status and pm.expect ensures clear and readable assertions. This script runs automatically after the request is sent to the mock server URL.

Common Mistakes - 3 Pitfalls
Hardcoding the mock server URL directly in the request
Not checking the response status code before validating the body
Using string matching instead of JSON property checks for response validation
Bonus Challenge

Now add data-driven testing with 3 different mock user responses

Show Hint

Practice

(1/5)
1. What is the main purpose of using a mock server URL in Postman?
easy
A. To speed up the internet connection
B. To store user data permanently
C. To test API requests without needing the real backend server
D. To create a live production environment

Solution

  1. Step 1: Understand what a mock server does

    A mock server simulates API responses without calling the real backend.
  2. Step 2: Identify the main use case

    This helps test APIs when the real server is unavailable or to speed up development.
  3. Final Answer:

    To test API requests without needing the real backend server -> Option C
  4. Quick Check:

    Mock server = test without real backend [OK]
Hint: Mock servers simulate APIs without real backend [OK]
Common Mistakes:
  • Thinking mock servers speed up internet
  • Confusing mock server with data storage
  • Assuming mock server is for production
2. Which of the following is the correct way to use a mock server URL in Postman?
easy
A. Replace the real API base URL with the mock server URL including the unique ID
B. Add the mock server URL as a query parameter to the real URL
C. Use the mock server URL only in the request headers
D. Append the mock server URL after the response body

Solution

  1. Step 1: Understand mock server URL usage

    You replace the real API base URL with the mock server URL that includes the unique mock ID.
  2. Step 2: Check other options

    Adding as query parameter, headers, or after response body is incorrect usage.
  3. Final Answer:

    Replace the real API base URL with the mock server URL including the unique ID -> Option A
  4. Quick Check:

    Mock URL replaces base URL [OK]
Hint: Mock URL replaces real API base URL [OK]
Common Mistakes:
  • Adding mock URL as query parameter
  • Using mock URL only in headers
  • Appending mock URL after response
3. Given the mock server URL https://mockserver.com/12345/api/users, what will happen if you send a GET request to this URL in Postman?
medium
A. You will get a mocked response defined in the mock server for the /api/users endpoint
B. The request will fail because mock servers do not support GET requests
C. You will get a real response from the live backend server
D. Postman will ignore the mock server URL and use the environment variable URL

Solution

  1. Step 1: Understand mock server behavior

    Mock servers return predefined responses for requests sent to their URLs.
  2. Step 2: Analyze the given URL and request

    Sending GET to the mock URL returns the mocked response for /api/users.
  3. Final Answer:

    You will get a mocked response defined in the mock server for the /api/users endpoint -> Option A
  4. Quick Check:

    GET to mock URL returns mock response [OK]
Hint: GET to mock URL returns predefined mock response [OK]
Common Mistakes:
  • Thinking mock servers reject GET requests
  • Expecting real backend response
  • Assuming environment variables override mock URL
4. You set the mock server URL incorrectly by missing the unique ID part, like https://mockserver.com/api/users. What issue will you face?
medium
A. The request will succeed and return the correct mock response
B. Postman will fail to route the request to the mock server and return an error
C. Postman will automatically add the missing unique ID
D. The request will be sent to the real backend server instead

Solution

  1. Step 1: Identify the importance of unique ID in mock URL

    The unique ID is required to route requests to the correct mock server instance.
  2. Step 2: Consequence of missing unique ID

    Without it, Postman cannot find the mock server and returns an error.
  3. Final Answer:

    Postman will fail to route the request to the mock server and return an error -> Option B
  4. Quick Check:

    Missing mock ID causes routing error [OK]
Hint: Always include unique ID in mock URL [OK]
Common Mistakes:
  • Assuming Postman auto-fixes missing ID
  • Expecting fallback to real backend
  • Thinking request will succeed without ID
5. You want to test an API endpoint /products using a Postman mock server. Your mock server URL is https://mockserver.com/abcde. Which is the correct full URL to use in your request to get the mocked /products response?
hard
A. https://mockserver.com/api/abcde/products
B. https://mockserver.com/products/abcde
C. https://mockserver.com/abcde/api/products
D. https://mockserver.com/abcde/products

Solution

  1. Step 1: Understand mock server URL structure

    The mock server URL includes the unique ID, followed by the API endpoint path.
  2. Step 2: Construct the correct full URL

    Append the endpoint /products directly after the unique ID in the URL.
  3. Final Answer:

    https://mockserver.com/abcde/products -> Option D
  4. Quick Check:

    Mock URL + endpoint path = full request URL [OK]
Hint: Append endpoint path after mock server URL with ID [OK]
Common Mistakes:
  • Placing unique ID after endpoint path
  • Adding extra /api/ segment incorrectly
  • Mixing order of ID and endpoint