https://www.youtube.com/watch?v=yb2Q3qS08rc Video about REST API testing by Portnov school Igor
https://www.sisense.com/blog/rest-api-testing-strategy-what-exactly-should-you-test/ about API testing
API testing
-API — это аббревиатура от Application Programming Interface.
—API — это набор определений подпрограмм, протоколов и инструментов для создания прикладного программного обеспечения.
-API является промежуточным уровнем между представлением (UI) и уровнем базы данных
-API обеспечивает связь и обмен данными из одной программной системы в другую
Простой протокол доступа к объектам
Работает с любым протоколом связи (TCP HTTP FTP SMTP)
Поддерживает только тип данных XML
Безопасность и авторизация являются частью протокола Документация в WSDL
Representational State Transfer
Works with hypertext transfer protocol (HTTP)
Support JSON , XML, TEXT, HTML
Authorization and security must be implemented separately
Documentation in Swagger
Передача репрезентативного состояния
Работает с протоколом передачи гипертекста (HTTP) Поддержка JSON, XML, TEXT, HTML
Авторизация и безопасность должны быть реализованы отдельно
Документация в Swagge
API Testing
API testing is a software testing type that validates Application Programming Interfaces (APIs)
API testing tests the APIs directly and as part of integration testing to determine if they meet expectations for functionality, reliability, performance, and security
In API Testing, instead of using standard user inputs (keyboard) and outputs, you use software to send calls to the API, get output, and note down the system's response
Тестирование API — это тип тестирования программного обеспечения, который проверяет интерфейсы прикладного программирования (API).
Тестирование API проверяет API напрямую и как часть интеграционного тестирования, чтобы определить, соответствуют ли они ожиданиям в отношении функциональности, надежности, производительности и безопасности.
В тестировании API вместо использования стандартных пользовательских входов (клавиатура) и выходов вы используете программное обеспечение для отправки вызовов API, получения выходных данных и записи ответа системы.
What are the common tests performed on API’s?
Validation testing
Functional testing
Security testing
Load testing
UI testing
Response Codes
100 Series > Informational. Temporal responses, ‘102 Processing’.
200 Series > Success. Responses where the client accepts the request and the server processes it successfully. ‘200 Ok’.
300 Series > Redirection. Responses related to URL redirection. (Перенаправление. Ответы, связанные с перенаправлением URL) ‘301 Moved Permanently.’
400 Series > Client error responses. ‘400 Bad Request’, ‘401 Unauthorized’, ‘403 Forbidden’
500 Series > Server error responses. ‘500 Internal Server Error.’ u List of HTTP status codes
API documentation is technical content that documents the API
includes instructions on how to effectively use and integrate the API;
provides updates on the API’s lifecycle (new versions or retirement);
part of API documentation can be generated automatically via API documentation templates;
Documentation describing API:
List of functions (endpoints)
Calls (requests)
Returns (responses)
включает инструкции по эффективному использованию и интеграции API;
предоставляет обновления жизненного цикла API (новые версии или вывод из эксплуатации);
часть документации по API может генерироваться автоматически с помощью шаблонов документации по API; Документация, описывающая API: Список функций (конечные точки) Вызовы (запросы) Возвраты (ответы)
API Documentation templates
Swagger
Slate
FlatDoc
API Blueprint
miredot
RAML
Etc
Postman
Postman is an application that allows us to build, test and modify APIs utilizing GUI
Users can create and save simple and complex HTTP/s requests, as well as read their responses
Desktop Client
CLI (Newman)
Postman API
Postman — это приложение, которое позволяет нам создавать, тестировать и изменять API-интерфейсы с использованием графического интерфейса. Пользователи могут создавать и сохранять простые и сложные запросы HTTP/s, а также читать свои ответы.