Sobes.tech
Junior

Opowiedz o Postmanie i jego możliwościach w testowaniu API.

sobes.tech AI

Odpowiedź od AI

Postman to aplikacja desktopowa i platforma internetowa do tworzenia i testowania API. Umożliwia wysyłanie żądań HTTP, przeglądanie odpowiedzi, tworzenie kolekcji żądań, automatyzację testów, dokumentowanie API i współpracę nad projektami.

Główne funkcje Postmana do testowania API:

  • Tworzenie i wysyłanie żądań: Obsługuje wszystkie główne metody HTTP (GET, POST, PUT, DELETE, PATCH). Umożliwia konfigurowanie parametrów żądania, nagłówków, ciała żądania (formularze, JSON, XML itp.).
  • Przeglądanie i analiza odpowiedzi: Wyświetla kod statusu, nagłówki i ciało odpowiedzi. Umożliwia formatowanie i wyszukiwanie danych w odpowiedzi.
  • Praca z kolekcjami: Organizuje żądania w foldery i kategorie. Przydatne do grupowania powiązanych testów.
  • Zmienne i środowiska: Przechowuje i używa zmiennych (URL, tokeny itp.) w żądaniach. Umożliwia szybkie przełączanie między różnymi środowiskami testowymi (dev, staging, prod).
  • Skrypty pre-request i testy:
    • Skrypty pre-request: Wykonywane przed wysłaniem żądania. Mogą służyć do przygotowania danych, generowania tokenów itp. Pisane w JavaScript.
    • Testy: Wykonywane po otrzymaniu odpowiedzi. Pozwalają na sprawdzanie kodu statusu, nagłówków, ciała odpowiedzi, czasu odpowiedzi i innych parametrów. Pisane w JavaScript z użyciem frameworka Chai.js.
  • Automatyzacja testów z Collection Runner: Umożliwia uruchomienie całej kolekcji lub wybranych żądań automatycznie. Można ustawić kolejność wykonywania, iteracje, opóźnienia. Wyniki wyświetlane są w raporcie.
  • Integracja z systemami CI/CD: Możliwość uruchamiania testów Postmana z linii poleceń za pomocą Newman (CLI-runner dla Postmana) i integracji z Jenkins, GitLab CI, GitHub Actions i innymi.
  • Dokumentacja API: Automatyczne tworzenie dokumentacji na podstawie żądań w kolekcji. Przydatne do udostępniania innym zespołom lub klientom.
  • Współpraca: Możliwość dzielenia się kolekcjami, zmiennymi i środowiskami z innymi członkami zespołu.

Przykład skryptu do sprawdzania statusu odpowiedzi i obecności pola w ciele odpowiedzi:

// Sprawdzanie statusu odpowiedzi
pm.test("Kod statusu to 200", function () {
    pm.response.to.have.status(200);
});

// Sprawdzanie obecności pola "success" w ciele odpowiedzi (oczekiwane jako wartość boolean)
pm.test("Ciało odpowiedzi zawiera właściwość 'success'", function () {
    const responseJson = pm.response.json();
    pm.expect(responseJson).to.have.property('success');
    pm.expect(responseJson.success).to.be.a('boolean'); // Opcjonalna weryfikacja typu
});

Przykład użycia zmiennych środowiskowych:

// Użycie zmiennej {{baseUrl}} w URL żądania
// W skrypcie pre-request pobierz token i zapisz go w zmiennej środowiskowej
pm.environment.set("authToken", responseData.token);

// Użyj zmiennej {{authToken}} w nagłówku Authorization żądania

Postman znacznie upraszcza testowanie API, czyniąc je bardziej efektywnym i wygodnym.