---
title: "Stiai ca poti scrie cod JS in Postman?"
description: "Poate ca nu stiai dar in Postman poti scrie cod JavaScript care sa te ajute in testele tale. Mai mult de atat, poti scrie cod care sa se execute inainte de REQUEST sau dupa RESPONSE. Pentru a executa..."
url: https://blogdeit.ro/stiai-ca-poti-scrie-cod-js-in-postman
date: 2023-04-04
modified: 2023-04-04
author: "Radu Popescu"
image: https://blogdeit.ro/wp-content/uploads/2021/07/vdi-coding.jpg
categories: ["Testare Software"]
tags: ["api", "code", "js", "postman", "request", "response"]
type: post
lang: en
---

# Stiai ca poti scrie cod JS in Postman?

Poate ca nu stiai dar in **Postman **poti scrie cod JavaScript care sa te ajute in testele tale. Mai mult de atat, poti scrie cod care sa se execute inainte de REQUEST sau dupa RESPONSE. Pentru a executa aceste scripturi in momente diferite, interfata Postman are 2 sectiuni distincte in care poti scrie codul:

- Pre-request scripts
- Tests

## Cand folosim Pre-request scripts?

Aceste scripturi care se ruleaza inaintre request-ului le putem folosi de exemplu in momentul in care dorim sa apelam un endpoint folosind o valoare random. Sa spunem ca avem un endpoint care ne afiseaza detaliile unui cocktail, iar noi vrem sa testam acel enpoint in fiecare zi dar cu un alt ID. Pentru a face asta intr-un mod simplu, putem sa folosim un script care genereaza o valoare random pe care o punem intr-o variabila si o trimite ca parametru.

**Endpoint: **
https://thecocktaildb.com/api/json/v1/1/lookup.php?iid={**{randomVal}}**

**Pre-request script:**
let random = Math.floor(Math.random() * 100) + 11000;
pm.variables.set('randomVal',random);

## Cand folosim Tests?

Fiind executate dupa ce primim raspunsul, aceste tipuri de scripturi se pot folosi pentru diferite verificari legate de raspuns, post-procesare, validare sau debug. Un exemplu bun ar fi acela in care verificam (https://developer.mozilla.org/en-US/docs/Web/HTTP/Status) requestului nostru sau daca raspunsul venit este in format JSON.

**Script care verifica daca raspuns-ul are codul 200:**
pm.test("Status test", function () {
pm.response.to.have.status(200);
});

**Script care verifica daca raspuns-ul e in format JSON:**
pm.test("response should be okay to process", function () {
pm.response.to.be.json;
});

Toate scripturile folosesc libraria **pm **(postman) si metoda **test**. Partea de assertions se face folosind libraria **Chai **pe care o folosim si in (https://www.blogdeit.ro/product/pregatire-software-tester-qa/) pe partea de automatizare cu Cypress.
