API Testing Checklist
- May 6, 2023
- 3 min read

It's difficult to make a universal API checklist because APIs can be very diverse in their functionality, design, and implementation. It's difficult to make a universal API checklist because APIs can be very diverse in their functionality, design, and implementation. APIs are used across a wide range of applications and industries, and they can have different purposes, requirements, and constraints. Therefore, there's no one-size-fits-all checklist that can cover all the possible scenarios and use cases for API testing. If the API is expected to receive a high volume of requests or handle a large amount of data, load and performance testing becomes critical but if the API is intended for internal use only, and the expected usage is low, load and performance testing may not be a priority. In the case of public APIs, clear and accurate documentation is critical because the APIs are designed to be used by third-party developers and applications. For internal APIs, the documentation may not need to be as comprehensive as public APIs. That is why we will create a small checklist of the most critical checks, you can select the checks that apply to the API you need to test. However, keep in mind that this is a small general checklist, and additional checks may be necessary depending on the specific requirements of the API and the business needs of the organization. One of the principles of testing is Testing Is Context Dependent.
1. Always start with Happy Path
Check the valid Request
Check the HTTP method
Check the URI/URL
Check query parameters
Check path parameters
Request headers
Check the Request body structure
Check the Request body values
Check the valid Response
Check the HTTP status code
Check the Response body structure
Check the Response body values
Check Response headers
2. Documentation testing (Ensure that the documentation includes all necessary information)
e.g. Examples of valid requests and responses; Examples of responses to invalid requests; Verifying that the request parameters are correct; Verifying that the response structure is correct; Verifying that the response codes and messages are correct; Verifying that the authentication and authorization requirements are correct, etc.
3. Contract Testing (Testing the API against a predefined contract or specification. The contract defines the expected behavior of the API, including the input parameters, expected output, and error handling)
e.g. Test API according to the documentation we tested above.
4. Functional testing (This involves verifying the functionality of an API by testing its endpoints, input validation, output validation, error handling, and other related aspects. The goal of functional API testing is to ensure that the API meets its intended functional requirements and behaves as expected)
e.g. Verify that the API accepts valid data and creates a new resource as expected when sending a valid POST request. Verify that the API returns the correct data when sending a valid GET request. Test whether the API responds correctly to queries with different parameters, such as filtering, sorting, and pagination. Verify that the API returns the expected status codes, such as 200 for a successful response and 404 for a resource not found. Verify that the API accepts valid data and updates the resource as expected when sending a valid PUT request. Verify that the API deletes the resource as expected when sending a valid DELETE request, etc.
5. Security testing (If API requires authentication for all requests)
e.g. Test whether the API is properly authenticating and authorizing users to access resources. This includes testing whether the API rejects unauthorized requests and properly handles authentication failures. Test whether the API is properly validating user input to prevent SQL injection, cross-site scripting (XSS) attacks, and other security vulnerabilities. Test whether the API is properly encrypting and decrypting sensitive data, such as passwords and user credentials. This includes testing whether the API is using secure encryption algorithms and protocols.
6. Performance testing (Ensure that API can handle the expected traffic)
e.g. Load testing with multiple users; Stress testing with maximum load; Endurance testing with prolonged load; Spike testing with sudden load increase; Caching performance; Response time; Error rate, etc.
7. Negative testing (Involves testing an API with invalid or unexpected inputs or scenarios, to ensure that it handles them correctly and responds appropriately.
e.g. Invalid input parameters(request body, headers, query params, path params); Test with missing or invalid data; Test with incorrect data type or format; Test with duplicate data; Test with too much data; Error handling; Security vulnerabilities; Performance under load; Testing edge cases, etc.


https://hubet98.co.com/ mình ghé vô xem thử do lướt thấy người ta nhắc, kiểu tò mò giao diện thôi chứ cũng không có ý định làm gì nhiều. Ấn tượng đầu là trang sắp xếp nội dung khá rõ ràng, kéo xuống thấy từng khối tách bạch nên mắt đỡ bị rối. Có đoạn giới thiệu về bảo mật SSL 256-bit đặt ngay trong phần nội dung, đọc lướt vẫn hiểu họ muốn nhấn mạnh chuyện an toàn dữ liệu. Mình mở bằng điện thoại thì bố cục vẫn giữ ổn, chữ vừa phải, bấm qua lại không bị giật hay load lâu. Nói chung nhìn như họ có chăm chút phần trình bày, nhất là mấy tiêu đề và các…
Mình cũng để ý phần nạp rút được đặt khá dễ thấy, nhìn thao tác có vẻ nhanh, không Günübirlik Rize yayla turları ile doğaya kaçış! Pokut’un sisli manzaralarından Ayder’in şelalelerine uzanan, unutulmaz bir Karadeniz macerasına hazır olun.Mình không có tìm hiểu sâu hay ngồi đọc hết nội dung đâu, chỉ lướt qua xem giao
https://ee88.garden/ mình bấm vào thử cho biết vì thấy bạn bè nhắc nhẹ, kiểu xem giao diện ra sao thôi. Ấn tượng đầu là trang sắp xếp theo mấy khối nội dung riêng nên nhìn khá thoáng, kéo xuống không bị rối mắt. Mình hay dùng điện thoại nên để ý cái menu: đặt ngay chỗ dễ thấy, chuyển qua lại mượt, không phải mò lâu. Thông tin trên trang cũng trình bày gọn gàng theo dạng cột/bảng nên liếc cái là hiểu đại khái, không cần bấm nhiều lớp. Nói chung cảm giác họ làm tối giản nhưng vẫn rõ ràng, nhất là cách chia block và căn cột nhìn sạch sẽ.
sunwin apk dạo này thấy nhiều người nhắc nên mình cũng bấm vào xem thử cho biết. Mình không có chơi gì nhiều, chủ yếu ngó giao diện với cách họ trình bày nội dung thôi. Cảm giác đầu tiên là trang nhìn khá “sạch”, màu sắc dễ chịu, mấy mục chính được xếp theo kiểu chia nhóm nên tìm thông tin không bị rối. Lướt qua phần giới thiệu thấy họ nhấn vào bảo mật với hệ thống vận hành chuyên nghiệp, viết ngắn gọn nên đọc vài dòng là hiểu ý. Mình cũng để ý thao tác chuyển qua lại giữa các mục khá mượt, không bị giật lag kiểu nhiều trang khác. Nói chung vào lần đầu…
gavangtv.llc dạo này mình thấy có người nhắc tới khi nói về các nền tảng giải trí trực tuyến nên cũng thử mở vào xem cách họ bố trí giao diện ra sao. Mình không đi sâu vào nội dung hay từng trò cụ thể, mà chủ yếu quan sát cách các chuyên mục được phân chia trên trang và cách thông tin hiển thị cho người dùng. Nhìn tổng thể thì các khu như thể thao, casino, game bài hay slot thường được sắp xếp theo từng nhóm khá rõ, hiển thị dạng khối và danh sách nên lướt qua cũng dễ theo dõi. Các bảng dữ liệu được trình bày dạng cột khá gọn, giúp quan sát nhanh…