Junior
Pastāsti par Postman un tā iespējām API testēšanā.
sobes.tech AI
Atbilde no AI
Postman ir galddators lietojumprogramma un tīmekļa platforma API izstrādei un testēšanai. Tā ļauj sūtīt HTTP pieprasījumus, apskatīt atbildes, veidot pieprasījumu kolekcijas, automatizēt testēšanu, dokumentēt API un sadarboties ar citiem projektiem.
Galvenās Postman iespējas API testēšanai:
- Pieprasījumu veidošana un sūtīšana: Atbalsta visus galvenos HTTP metodes (GET, POST, PUT, DELETE, PATCH). Ļauj konfigurēt pieprasījuma parametrus, galvenes, pieprasījuma ķermeni (formu, JSON, XML utt.).
- Atbilžu apskate un analīze: Parāda statusa kodu, galvenes un atbildes ķermeni. Ļauj formatēt un meklēt datus atbildē.
- Kolekciju pārvaldība: Organizē pieprasījumus mapēs un kategorijās. Ērti grupēt saistītus testus.
- Mainīgie un vide: Saglabā un izmanto mainīgos (URL, tokenus utt.) pieprasījumos. Ātri pārslēgties starp dažādām testēšanas vidēm (dev, staging, prod).
- Pre-request un Tests skripti:
- Pre-request skripti: Tiek izpildīti pirms pieprasījuma nosūtīšanas. Var tikt izmantoti datu sagatavošanai, tokenu ģenerēšanai utt. Rakstīti JavaScript.
- Tests: Tiek izpildīti pēc atbildes saņemšanas. Ļauj pārbaudīt statusa kodu, galvenes, atbildes ķermeni, atbildes laiku un citus parametrus. Rakstīti JavaScript ar Chai.js framework.
- Automatizācija ar Collection Runner: Ļauj automātiski palaist visu kolekciju vai atlasītus pieprasījumus. Var konfigurēt izpildes kārtību, iterāciju skaitu, aizkaves. Rezultāti tiek rādīti atskaitē.
- CI/CD sistēmu integrācija: Iespēja palaist Postman testus no komandrindas, izmantojot Newman (CLI-Runner), kā arī integrēt ar Jenkins, GitLab CI, GitHub Actions un citām sistēmām.
- API dokumentācija: Automātiski ģenerē dokumentāciju, balstoties uz kolekcijas pieprasījumiem. Ērti koplietot ar citiem komandām vai klientiem.
- Kopīga darba iespēja: Iespēja koplietot kolekcijas, mainīgos un vide ar citiem komandas locekļiem.
Piemērs skriptam, kas pārbauda atbildes statusu un vai ķermenī ir konkrēts lauks:
// Atbildes statusa pārbaude
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
// Lauka "success" pārbaude atbildes ķermenī (gaidāms, ka tas ir 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'); // Neobligāta tipa pārbaude
});
Videi mainīgo izmantošanas piemērs:
// Izmantot {{baseUrl}} mainīgo pieprasījuma URL
// Pre-request skriptā iegūt tokenu un saglabāt kā videi mainīgo
pm.environment.set("authToken", responseData.token);
// Autorizācijas galvenē izmantot {{authToken}} mainīgo
Postman ievērojami atvieglo API testēšanu, padarot to efektīvāku un ērtāku.