С какими сетевыми протоколами вы работали при тестировании веб-приложений?

Ответ

Основной протокол — HTTP/HTTPS.

  • HTTP (HyperText Transfer Protocol): протокол прикладного уровня для передачи данных в незашифрованном виде.
  • HTTPS: защищённая версия HTTP, использующая шифрование SSL/TLS для безопасной передачи данных.

Пример сырого HTTP-запроса (GET):

GET /api/v1/users HTTP/1.1
Host: example.com
Accept: application/json

В зависимости от задач также сталкивался с:

  • WebSocket: для тестирования функций реального времени (чаты, уведомления).
  • TCP/UDP: при тестировании голосовой связи (VoIP) или сетевых игр.
  • FTP/SFTP: для проверки функционала загрузки и выгрузки файлов.

Для API-тестирования чаще всего работал с REST (основан на HTTP) и GraphQL (использует HTTP как транспорт).

Ответ 18+ 🔞

Да, блядь, основной протокол — это, конечно, HTTP/HTTPS. Без этого нихуя не работает, всё на нём держится, как мир на трёх китах, только киты эти — сплошные запросы и ответы.

  • HTTP (HyperText Transfer Protocol): Это типа как открытка. Протокол прикладного уровня, который таскает данные в открытом, незашифрованном виде. Любой промежуточный ушлёпок может её прочитать, если захочет.
  • HTTPS: А это уже заказное письмо в бронированном конверте. Та же открытка, но засунутая в шифрование SSL/TLS, чтобы никто, даже самый ебучий посредник, не подглядел, что ты там передаёшь.

Вот, смотри, как выглядит голый HTTP-запрос (GET), без прикрас:

GET /api/v1/users HTTP/1.1
Host: example.com
Accept: application/json

Просто, как три копейки, но именно так всё и крутится.

А ещё, в зависимости от того, на какую жопу садился, сталкивался и с другим. Ну, понимаешь, задачи-то разные бывают, пиздец.

  • WebSocket: Это когда нужно тестить какую-нибудь хуйню в реальном времени. Типа чатов, уведомлений, где данные должны литься рекой, а не капать по запросу. Тут уже не «спросил-ответил», а постоянная двусторонняя болтовня.
  • TCP/UDP: Вот это уже пониже уровень, ближе к железу. TCP — надёжный, как швейцарские часы, UDP — быстрый, но может и потеряться по дороге. Пригождалось, когда тестировал голосовуху (VoIP) или сетевые игры, где важна скорость, а не стопроцентная доставка каждого пакета.
  • FTP/SFTP: Старая, добрая классика для пересылки файлов. FTP — тот же HTTP в мире файлов, только ещё древнее, а SFTP — его защищённый брат-хулиган. Полезно, когда нужно проверить, как система качает или заливает гигабайты данных.

Ну а для тестирования API, само собой, чаще всего имел дело с REST (он целиком на HTTP сидит, как на стуле) и GraphQL (этот умник тоже HTTP как транспорт использует, но запросы у него — отдельная песня, блядь). Вот такая, понимаешь, мозаика получается.