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.