Bird
Raised Fist0
Testing Fundamentalstesting~10 mins

Request methods and status codes in Testing Fundamentals - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check if the HTTP request method is GET.

Testing Fundamentals
if request.method == '[1]':
    print("This is a GET request")
Drag options to blanks, or click blank then click option'
APOST
BGET
CPUT
DDELETE
Attempts:
3 left
💡 Hint
Common Mistakes
Using lowercase 'get' instead of uppercase 'GET'.
Confusing GET with POST method.
2fill in blank
medium

Complete the code to assert the HTTP response status code is 404 (Not Found).

Testing Fundamentals
assert response.status_code == [1]
Drag options to blanks, or click blank then click option'
A200
B302
C404
D500
Attempts:
3 left
💡 Hint
Common Mistakes
Using 200 which means OK instead of 404.
Using string '404' instead of integer 404.
3fill in blank
hard

Fix the error in the code that checks if the request method is POST.

Testing Fundamentals
if request.method == '[1]':
    process_post_request()
Drag options to blanks, or click blank then click option'
APOST
Bpost
CPut
DGET
Attempts:
3 left
💡 Hint
Common Mistakes
Using lowercase 'post' which will not match.
Confusing POST with PUT or GET.
4fill in blank
hard

Fill both blanks to create a dictionary comprehension that maps status codes to their meaning for codes greater than 399.

Testing Fundamentals
error_codes = {code: messages[code] for code in codes if code [1] 399 and code [2] 600}
Drag options to blanks, or click blank then click option'
A>
B<
C>=
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Using <= 399 includes non-error codes.
Using >= 600 includes codes outside standard HTTP status codes.
5fill in blank
hard

Fill both blanks to create a dictionary comprehension that maps uppercase HTTP methods to their success status codes greater or equal to 200.

Testing Fundamentals
success_status = {method: code for method, code in method_codes.items() if code [1] 200 and method[2].isupper()}
Drag options to blanks, or click blank then click option'
A.lower()
B>=
D.upper()
Attempts:
3 left
💡 Hint
Common Mistakes
Using .lower() which would convert method names incorrectly.
Using empty string for blank 2 which causes syntax error.

Practice

(1/5)
1. Which HTTP request method is typically used to retrieve data from a server without changing it?
easy
A. PUT
B. POST
C. DELETE
D. GET

Solution

  1. Step 1: Understand the purpose of HTTP methods

    GET is used to request data without modifying it, while POST, PUT, and DELETE change data on the server.
  2. Step 2: Match method to action

    Since the question asks for retrieving data without changes, GET is the correct method.
  3. Final Answer:

    GET -> Option D
  4. Quick Check:

    Retrieve data = GET [OK]
Hint: GET always fetches data without side effects [OK]
Common Mistakes:
  • Confusing POST with GET for data retrieval
  • Thinking PUT or DELETE retrieve data
  • Assuming GET modifies data
2. Which HTTP status code means the request was successful and the server returned the requested data?
easy
A. 200 OK
B. 404 Not Found
C. 500 Internal Server Error
D. 301 Moved Permanently

Solution

  1. Step 1: Identify success status codes

    HTTP status codes starting with 2xx indicate success. 200 OK means the request succeeded and data is returned.
  2. Step 2: Eliminate error and redirect codes

    404 means not found, 500 means server error, and 301 means redirect. These do not indicate success with data returned.
  3. Final Answer:

    200 OK -> Option A
  4. Quick Check:

    Success code = 200 OK [OK]
Hint: 200 means success and data returned [OK]
Common Mistakes:
  • Choosing 404 thinking it means success
  • Confusing 301 redirect with success
  • Mixing client and server error codes
3. What will be the HTTP status code returned if a client sends a DELETE request to remove a resource successfully?
medium
A. 201 Created
B. 204 No Content
C. 400 Bad Request
D. 403 Forbidden

Solution

  1. Step 1: Understand DELETE success codes

    A successful DELETE request usually returns 204 No Content, meaning the resource was deleted and no content is returned.
  2. Step 2: Eliminate other codes

    201 Created is for resource creation, 400 Bad Request means client error, and 403 Forbidden means no permission.
  3. Final Answer:

    204 No Content -> Option B
  4. Quick Check:

    DELETE success = 204 No Content [OK]
Hint: DELETE success usually returns 204 No Content [OK]
Common Mistakes:
  • Choosing 201 which is for creation
  • Confusing 400 with success
  • Thinking 403 means success
4. A test script sends a POST request to create a new user but receives a 405 Method Not Allowed status. What is the most likely cause?
medium
A. The server does not support the POST method on this URL
B. The user data is invalid
C. The server is down
D. The request timed out

Solution

  1. Step 1: Understand 405 status meaning

    405 Method Not Allowed means the HTTP method used is not supported by the server for the requested URL.
  2. Step 2: Eliminate other causes

    Invalid data usually causes 400 errors, server down causes 5xx errors, and timeout causes no response or 408.
  3. Final Answer:

    The server does not support the POST method on this URL -> Option A
  4. Quick Check:

    405 = Method not allowed [OK]
Hint: 405 means method not allowed on this URL [OK]
Common Mistakes:
  • Thinking 405 means invalid data
  • Confusing 405 with server errors
  • Assuming timeout causes 405
5. During API testing, a PUT request to update a resource returns 409 Conflict. What should the tester check next?
hard
A. If the request method should be GET instead
B. If the request URL is incorrect
C. If the resource already exists and has conflicting changes
D. If the server is overloaded

Solution

  1. Step 1: Understand 409 Conflict meaning

    409 Conflict means the request could not be completed due to a conflict with the current state of the resource, often caused by simultaneous updates.
  2. Step 2: Identify what to check

    The tester should check if the resource exists and if there are conflicting changes that prevent the update.
  3. Final Answer:

    If the resource already exists and has conflicting changes -> Option C
  4. Quick Check:

    409 = Conflict with resource state [OK]
Hint: 409 means conflict with existing resource state [OK]
Common Mistakes:
  • Assuming 409 means wrong URL
  • Thinking 409 means server overload
  • Confusing 409 with method errors
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard