Bird
Raised Fist0
Postmantesting~10 mins

Bearer token in Postman - Test Execution Trace

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 sends an API request with a Bearer token for authorization. It verifies that the server accepts the token and returns a successful response.

Test Code - Postman Tests
Postman
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

pm.test("Response contains expected data", function () {
    const jsonData = pm.response.json();
    pm.expect(jsonData).to.have.property('userId');
});
Execution Trace - 5 Steps
StepActionSystem StateAssertionResult
1Open Postman and create a new GET request to the API endpointPostman UI shows the request setup screen with URL field emptyPASS
2Set Authorization type to Bearer Token and enter the token valueAuthorization tab shows Bearer Token selected and token input filledPASS
3Send the request to the serverPostman sends HTTP GET request with Authorization header: Bearer <token>PASS
4Receive response from server with status code 200 and JSON bodyResponse tab shows status 200 OK and JSON data including userIdCheck that response status is 200PASS
5Run test script to verify response contains 'userId' propertyTest results panel shows test executionVerify response JSON has property 'userId'PASS
Failure Scenario
Failing Condition: Bearer token is missing, expired, or invalid causing server to reject authorization
Execution Trace Quiz - 3 Questions
Test your understanding
What does the Bearer token do in this test?
AIt encrypts the response data
BIt authorizes the request to access protected resources
CIt changes the request method to POST
DIt sets the content type to JSON
Key Result
Always verify that the Bearer token is correctly set and valid before sending API requests to avoid authorization failures.

Practice

(1/5)
1. What is the correct way to include a Bearer token in a Postman request header?
easy
A. Add a query parameter named 'token' with the token value
B. Set the Authorization header to 'Bearer <token>'
C. Include the token in the request body as JSON
D. Set a cookie named 'Bearer' with the token value

Solution

  1. Step 1: Understand Bearer token usage in headers

    Bearer tokens are sent in the Authorization header to prove identity.
  2. Step 2: Identify correct header format

    The header must be 'Authorization: Bearer <token>' exactly.
  3. Final Answer:

    Set the Authorization header to 'Bearer <token>' -> Option B
  4. Quick Check:

    Authorization header = Bearer token [OK]
Hint: Always use Authorization header with 'Bearer ' prefix [OK]
Common Mistakes:
  • Putting token in query parameters instead of header
  • Sending token in request body instead of header
  • Using cookie instead of Authorization header
2. Which of the following is the correct syntax to add a Bearer token in Postman headers?
easy
A. "Auth": "Bearer <token>"
B. "Authorization": "Token <token>"
C. "Authorization": "Bearer <token>"
D. "Authorization": "Basic <token>"

Solution

  1. Step 1: Recall correct header key and value format

    The header key must be 'Authorization' and the value must start with 'Bearer '.
  2. Step 2: Match the exact syntax

    Only "Authorization": "Bearer <token>" uses 'Authorization' and 'Bearer <token>' correctly.
  3. Final Answer:

    "Authorization": "Bearer <token>" -> Option C
  4. Quick Check:

    Authorization = Bearer token syntax [OK]
Hint: Remember header key is 'Authorization' and value starts with 'Bearer ' [OK]
Common Mistakes:
  • Using 'Token' instead of 'Bearer' prefix
  • Using 'Auth' instead of 'Authorization' header
  • Confusing 'Basic' auth with Bearer token
3. Given this Postman test script snippet, what will be the value of the Authorization header sent?
pm.request.headers.add({key: 'Authorization', value: `Bearer ${pm.environment.get('token')}`});
medium
A. Authorization: Bearer <token_value_from_environment>
B. Authorization: Token <token_value_from_environment>
C. Authorization: Bearer undefined
D. Authorization: Basic <token_value_from_environment>

Solution

  1. Step 1: Understand the code usage of environment variable

    The code uses pm.environment.get('token') to get the token value from environment variables.
  2. Step 2: Analyze the header value construction

    The header value is 'Bearer ' plus the token value from environment, so it will be 'Bearer <token_value_from_environment>'.
  3. Final Answer:

    Authorization: Bearer <token_value_from_environment> -> Option A
  4. Quick Check:

    Header value = 'Bearer ' + environment token [OK]
Hint: Check environment variable usage inside template literals [OK]
Common Mistakes:
  • Assuming token is 'undefined' if environment variable missing
  • Using 'Token' instead of 'Bearer' prefix
  • Confusing Basic auth with Bearer token
4. You added a Bearer token in Postman but the API returns 401 Unauthorized. What is the most likely mistake?
medium
A. The Authorization header is missing the 'Bearer ' prefix
B. The token is placed in the request body instead of headers
C. The Content-Type header is set to 'application/json'
D. The token is expired or invalid

Solution

  1. Step 1: Check common causes of 401 Unauthorized with Bearer tokens

    401 usually means token is missing, malformed, or invalid/expired.
  2. Step 2: Identify the most likely cause given the token is added

    If the token is added correctly but still 401, it is likely expired or invalid.
  3. Final Answer:

    The token is expired or invalid -> Option D
  4. Quick Check:

    401 Unauthorized often means invalid token [OK]
Hint: Check token validity if 401 despite correct header [OK]
Common Mistakes:
  • Forgetting 'Bearer ' prefix in Authorization header
  • Placing token in body instead of header
  • Assuming Content-Type affects authorization
5. You want to automate testing of an API that requires a Bearer token which expires every hour. Which approach is best to handle this in Postman?
hard
A. Use a Pre-request Script to fetch a new token and set it dynamically before each request
B. Manually update the token in environment variables before each test run
C. Hardcode the token in the Authorization header and ignore expiration
D. Remove the Authorization header to avoid token expiration errors

Solution

  1. Step 1: Understand token expiration and automation needs

    Since the token expires hourly, manual updates are inefficient and error-prone.
  2. Step 2: Choose dynamic token fetching in Pre-request Script

    Using a Pre-request Script to get a fresh token before each request automates the process and avoids failures.
  3. Final Answer:

    Use a Pre-request Script to fetch a new token and set it dynamically before each request -> Option A
  4. Quick Check:

    Automate token refresh with Pre-request Script [OK]
Hint: Automate token refresh with Pre-request Script [OK]
Common Mistakes:
  • Manually updating tokens wastes time and causes errors
  • Hardcoding tokens ignores expiration and causes failures
  • Removing Authorization header breaks authentication