Przejdź do treści
Wróć do kursuAPI i QA / Lekcja 2 z 8

Lekcja 2 / świadomy odczyt

GET w praktyce: parametry, headers i czytanie JSON-a

Support pyta: „pokaż tylko posty użytkownika 1, bo w panelu widzi cudze wpisy”. Teraz sam endpoint to za mało. Musisz dodać parametr i sprawdzić, czy odpowiedź pasuje do pytania.

Masz pytanie, więc zawężasz request

Bez parametru endpoint może zwrócić wszystko. Z parametrem mówisz API: interesują mnie tylko rekordy, które spełniają konkretny warunek. To podobne do rozmowy: zamiast „daj posty”, pytasz „daj posty użytkownika 1”.

RequestZnaczenieKiedy użyć
/postsLista postówGdy chcesz zobaczyć ogólny kształt danych
/posts?userId=1Posty użytkownika 1Gdy diagnozujesz konkretny przypadek
Accept: application/jsonOczekujesz JSON-aGdy chcesz jasno opisać format odpowiedzi

Request w Postmanie

W zakładce Params dodajesz parę userId1. Postman sam doklei ją do URL-a.

Postman: menu zakładek requestu z Params, Authorization, Body i Scripts
Kliknij nazwę aktualnej zakładki requestu, żeby przełączać się między Params, Authorization, Headers, Body i Scripts.
GET https://jsonplaceholder.typicode.com/posts?userId=1
Accept: application/json

W odpowiedzi dostajesz listę obiektów. Każdy obiekt powinien mieć userId równe 1. To jest konkretna rzecz do sprawdzenia, a nie ogólne „działa”.

[
  {
    "userId": 1,
    "id": 1,
    "title": "sunt aut facere...",
    "body": "quia et suscipit..."
  }
]

Na co patrzysz w JSON-ie

Kształt danych
Czy odpowiedź jest listą, czy jednym obiektem? Inaczej testuje się listę wyników, inaczej profil użytkownika.
Warunek
Czy każdy element ma userId: 1? Jeśli nie, API oddaje dane spoza zakresu pytania.

Header Accept nie jest ozdobą. To informacja, w jakim formacie klient oczekuje odpowiedzi. W wielu API nagłówki decydują też o wersji API, języku odpowiedzi albo autoryzacji.

Ćwiczenie

Wyślij GET /posts?userId=2. Sprawdź trzy rzeczy: status, czy odpowiedź jest listą, oraz czy każdy obiekt ma userId równy 2.

Mini-zadanie

Usuń parametr userId i porównaj długość odpowiedzi z requestem filtrowanym.

Większa praktyka

Napisz krótką notatkę: „Request bez parametru zwraca..., request z parametrem zwraca..., dlatego w zgłoszeniu użytkownika lepiej użyć...”.

Quiz

Gdzie w Postmanie najwygodniej dodać userId=1?

W zakładce Params jako parę key/value. Postman zbuduje URL z query stringiem.

Co oznacza JSON zaczynający się od [?

Najczęściej listę elementów. To ważne, bo sprawdzasz wtedy każdy element albo liczbę elementów.

Czy header zawsze jest wymagany?

Nie zawsze, ale w pracy QA warto wiedzieć, jakie nagłówki zmieniają odpowiedź albo dostęp.

Co dalej?

Umiesz już odczytać dane i zawęzić request. Następny krok to wysyłanie danych w body, czyli moment, w którym request zaczyna coś tworzyć albo zmieniać.

Lekcja 2: GET w praktyce: parametry, headers i czytanie JSON-a | Postman od podstaw dla QA | Mikołaj Mikołajczak