Junior
Ispričaj o Postmanu i njegovim mogućnostima u testiranju API-ja.
sobes.tech АИ
Одговор од АИ
Postman je desktop aplikacija i web platforma za razvoj i testiranje API-ja. Omogućava slanje HTTP zahteva, pregled odgovora, kreiranje kolekcija zahteva, automatizaciju testiranja, dokumentovanje API-ja i zajednički rad na projektima.
Glavne mogućnosti Postmana za testiranje API-ja:
- Kreiranje i slanje zahteva: Podržava sve glavne HTTP metode (GET, POST, PUT, DELETE, PATCH). Omogućava podešavanje parametara zahteva, zaglavlja, tela zahteva (forme, JSON, XML itd.).
- Pregled i analiza odgovora: Prikazuje status kod, zaglavlja i telo odgovora. Omogućava formatiranje i pretraživanje podataka u odgovoru.
- Rad sa kolekcijama: Organizacija zahteva u foldere i kategorije. Pogodno za grupisanje povezanih testova.
- Promenljive i okruženja: Čuvanje i korišćenje promenljivih (URL, tokeni itd.) u zahtevima. Brzo prebacivanje između različitih testnih okruženja (dev, staging, prod).
- Pre-request i Test skripte:
- Pre-request skripte: Izvršavaju se pre slanja zahteva. Mogu se koristiti za pripremu podataka, generisanje tokena itd. Napravljene u JavaScript-u.
- Testovi: Izvršavaju se nakon dobijanja odgovora. Omogućavaju proveru status koda, zaglavlja, tela odgovora, vremena odgovora i drugih parametara. Napravljeni u JavaScript-u koristeći framework Chai.js.
- Automatizacija testiranja sa Collection Runner-om: Omogućava pokretanje cele kolekcije ili odabranih zahteva automatski. Može se podesiti redosled izvršavanja, iteracije, kašnjenja. Rezultati izvršenja prikazuju se u izveštaju.
- Integracija sa CI/CD sistemima: Mogućnost pokretanja Postman testova iz komandne linije pomoću Newman (CLI runner za Postman) i integracija sa Jenkins, GitLab CI, GitHub Actions i drugim.
- Dokumentovanje API-ja: Automatsko kreiranje dokumentacije na osnovu zahteva u kolekciji. Pogodno za deljenje sa drugim timovima ili klijentima.
- Zajednički rad: Mogućnost deljenja kolekcija, promenljivih i okruženja sa drugim članovima tima.
Primer skripte za proveru statusa odgovora i prisustva polja u telu odgovora:
// Provera status koda
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
// Provera prisustva polja "success" u telu odgovora (očekuje se boolean)
pm.test("Response body has 'success' property", function () {
const responseJson = pm.response.json();
pm.expect(responseJson).to.have.property('success');
pm.expect(responseJson.success).to.be.a('boolean'); // Opcionalna provera tipa
});
Primer korišćenja promenljivih okruženja:
// Korišćenje promenljive {{baseUrl}} u URL-u zahteva
// U Pre-request Script-u dobijanje tokena i čuvanje u promenljivu okruženja
pm.environment.set("authToken", responseData.token);
// U zaglavlju zahteva za autorizaciju koristiti promenljivu {{authToken}}
Postman znatno olakšava testiranje API-ja, čineći ga efikasnijim i praktičnijim.