Bird
Raised Fist0
Testing Fundamentalstesting~20 mins

Request methods and status codes in Testing Fundamentals - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
HTTP Testing Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
Understanding HTTP Request Methods

Which HTTP request method is typically used to update an existing resource on a server?

APUT
BPOST
CDELETE
DGET
Attempts:
2 left
💡 Hint

Think about which method replaces the entire resource with new data.

❓ Predict Output
intermediate
1:00remaining
HTTP Status Code Meaning

What is the meaning of the HTTP status code 404?

AResource not found on the server
BRequest succeeded and resource was created
CServer encountered an internal error
DRequest was unauthorized
Attempts:
2 left
💡 Hint

It is a common error when a webpage is missing.

❓ assertion
advanced
1:30remaining
Validating HTTP Response Status in Tests

Which assertion correctly checks that an HTTP response status code is 200 in a test?

Testing Fundamentals
response = client.get('/api/data')
Aassert response.status_code = 200
Bassert response.status == '200 OK'
Cassert response.status_code == 200
Dassert response.code == 200
Attempts:
2 left
💡 Hint

Check the attribute name and use the correct comparison operator.

🔧 Debug
advanced
2:00remaining
Identifying the Cause of a 405 Error

A test sends a POST request to an endpoint but receives a 405 Method Not Allowed error. What is the most likely cause?

AThe request body is missing
BThe server is down
CThe request URL is incorrect
DThe endpoint does not support the POST method
Attempts:
2 left
💡 Hint

405 means the method is not allowed on that URL.

❓ framework
expert
2:30remaining
Choosing the Best Test Framework Feature for HTTP Status Validation

In an automated API test suite, which feature of a test framework best helps to verify multiple HTTP status codes efficiently?

AWriting separate test functions for each status code manually
BUsing parameterized tests to run the same test with different expected status codes
CIgnoring status codes and only checking response body content
DUsing print statements to manually check status codes during test runs
Attempts:
2 left
💡 Hint

Think about reducing repeated code and improving test coverage.

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