Postman è attualmente il miglior strumento per testare le API Rest in maniera del tutto semplice e veloce e, soprattutto, senza inutili perdite di tempo.
Le Api REST sono ormai da parecchi anni molto utilizzate per tutta una serie di vantaggi che sono in grado di offrire, per la loro semplicità di utilizzo e per il fatto che le rendono uno standard indispensabile per il World Wide Web.
Sono utilizzate praticamente ovunque e da chiunque e quindi anche chi deve occuparsi dello sviluppo di questa tipologia di servizi deve essere in grado di testarli in maniera facile, semplice e, soprattutto, veloce.
LEGGI ANCHE: Diventare programmatore informatico: cosa c’è da sapere.
In questa guida scoprirai come utilizzare Postman e come sfruttarlo al massimo delle sue potenzialità per testare tutti i tuoi servizi REST in maniera semplice e rapida.
Postman è un software open source che ti permetterà di testare le API senza preoccuparti di dover creare delle apposite classi di test come si faceva invece in passato. D’ora in poi testare le tue API non sarà mai stato cosi semplice e veloce.
Vediamo insieme come installare Postman sul proprio pc e come configurarlo al meglio per poterlo utilizzare nel migliore dei modi.
Differenza fra REST e API
Innanzitutto vorrei fare un po’ di chiarezza su due termini che ancora oggi molte persone considerano come due sinonimi: REST e RESTful API.
REST è l’acronimo di REpresentational State Transfer, ovvero una rappresentazione del trasferimento di stato di un determinato dato. Descrive una serie di linee guida e di approcci che definiscono lo stile con cui i dati vengono trasmessi.
API invece è l’acronimo di Application Programming Interface e indica un insieme di procedure (in genere raggruppate per strumenti specifici) atte a risolvere uno specifico problema di comunicazione tra diversi computer o tra diversi software o tra diversi componenti di software.
Nel caso specifico sei servizi web, le API non sono altro che un insieme di endpoint, che sono rappresentante da dei semplici URL. Gli endpoint rispondono a delle precise richieste fatte da una specifica applicazione.
Molto spesso si sente parlare erroneamente di REST ed API in maniera quasi sempre collegata.
Non sono assolutamente la stessa cosa.
Basta sapere che solitamente viene creato un set di API che rispettano la logica imposta da REST creando le cosiddette RESTful API.
Dopo una spiegazione abbastanza veloce di questi due termini, passiamo adesso all’argomento di questo articolo e cioè come testare servizi REST con l’utilizzo di Postman.
Cos’è Postman?
Postman è un utilissimo tool open source che ti aiuta a creare, testare, documentare, monitorare e pubblicare documentazione per le tue API. Si tratta di uno strumento che ti permette di eseguire qualsiasi tipo di richiesta verso un server ed è in grado di darti qualsiasi tipo di informazione che tu necessiti.
Postman ti permette di creare da zero le tue richieste specificando tutti i parametri possibili e immaginnabili, conoscere ogni tipo di informazione sia della Request che della successiva Response.
Oltre a creare da zero le richiesta è anche possibile ovviamente richiamare servizi esposti e già esistenti – scritti in un qualsiasi linguaggio di programmazione – e testarli in maniera completa.
È possibile effettuare chiamate HTTP in GET, POST, PUT e DELETE, salvarle e raggrupparle per non doverle ridefinire ogni volta. Inoltre, è possibile farsi generare il codice lato client per ogni chiamata in linguaggi diversi. È possibile creare un batch di chiamate ed eseguirle in automatico in loop, generare una documentazione e moltissima altre funzionalità indispensabili per chi svolge questo lavoro.
Perchè usare Postman?
Prima dell’introduzione di Postman, il processo di testing delle API era spesso manuale e richiedeva molto tempo. Gli sviluppatori dovevano inviare richieste HTTP tramite strumenti come curl o wget, visualizzare le risposte e confrontare i risultati con la specifica dell’API. Questo processo era spesso soggetto a errori umani e richiedeva molto tempo.
Postman semplifica questo processo in diversi modi:
- Interfaccia grafica: Postman offre un’interfaccia grafica user-friendly per inviare richieste HTTP e visualizzare le risposte. Questo semplifica il processo di test e lo rende più efficiente rispetto all’utilizzo di strumenti a riga di comando come curl.
- Creazione di richieste personalizzate: con Postman, gli sviluppatori possono facilmente creare richieste HTTP personalizzate, includendo i parametri e gli header necessari per testare le API. Ciò semplifica il processo di test delle API e rende più efficiente l’intero processo di sviluppo.
- Creazione di ambienti: dal mio punto di vista, una delle funzionalità migliori di Postman. Permette infatti, tramite la parametrizzazione dei dati, di utilizzare le stesse richieste su ambienti differenti tra loro senza la necessità di riscriverle di volta in volta.
- Gestione delle autorizzazioni: Postman offre una vasta gamma di opzioni per gestire le autorizzazioni necessarie per accedere alle API. Questo semplifica il processo di test e lo rende più sicuro, eliminando la necessità di creare manualmente le credenziali di accesso.
- Test automatizzati: Postman consente di creare test automatizzati per le API, semplificando il processo di test e garantendo che le API funzionino correttamente.
- Condivisione di raccolte di richieste: con Postman, gli sviluppatori possono facilmente condividere raccolte di richieste con il resto del team. Ciò semplifica la collaborazione e riduce il tempo necessario per testare e sviluppare le API.
In sintesi, Postman semplifica il processo di test e sviluppo delle API in diversi modi, eliminando la necessità di utilizzare strumenti a riga di comando e semplificando il processo di collaborazione tra team.
Come funziona Postman?
Come detto precedentemente, uno dei software più utilizzati per testare API REST si chiama Postman ed è possibile scaricarlo gratuitamente direttamente dal sito ufficiale.
Postman è disponibile sia per sistemi operativi Windows, nella versione da 32 e 64 bit, sia per macOS che per Linux.
Una volta scaricato, installato e avviato Postman, comparirà la seguente schermata principale:
Come potrai notare, ha una grafica semplicissima e il suo funzionamento lo è ancora di più.
Quello che bisognerà fare sarà essenzialmente configurare in maniera corretta tutti i parametri necessari per poter testare un qualsivoglia servizio.
LEGGI ANCHE: Come creare prompt per l’AI e guadagnare.
Vediamo in che modo è possibile configurare questi parametri all’interno di Postman per poter iniziare a testare i servizi creati.
Tipologia di chiamata
Innanzitutto, da questa prima schermata si possono settare due tra i valori essenziali di una qualsiasi chiamata a un servizio REST:
- Tipologia di chiamata (GET, POST, PUT, DELETE ecc.).
- URL da testare.
Supponiamo ad esempio di voler testare un servizio che utilizza il metodo POST che è stato mappato sull’url “http://localhost:8080/myproject/testURL“. Basterà incollare l’indirizzo nell’apposito campo di testo e selezionare dal menù a tendina presente sulla sinistra della pagina la tipologia di chiamata desiderata.
Autenticazione in Postman
Oltra alla tipologia di chiamata, indispensabile per testare qualsiasi servizio, è possibile anche impostare la parte relativa all’autorizzazione.
Per applicazioni reali infatti, ad ogni chiamata di un servizio è necessaria un’autorizzazione per poter accedere al servizio stesso.
Tutto ciò può essere impostato dal Tab “Authorization“.
Nel caso in esempio andremo a impostare una Basic Authentication.
In questo caso si dovranno inserire come parametri una Username e una Password che devono corrispondere a quelli impostati lato codice per poter usufruire del servizio.
Tipologia di dati
Altra cosa fondamentale quando si espone un servizio REST è la tipologia di dati che viene inviata dall’utente finale e i vari parametri che vengono inviati al server per effettuare la chiamata al servizio.
Sempre nell’esempio in questione utilizzeremo come parametro in ingresso un oggetto di tipo JSON. Il JSON è il formato di dati più utilizzato in queste situazioni per il semplice fatto che è molto leggero e maneggevole rispetto ad altri formati.
Supponiamo di aver scritto un servizio REST utilizzando SpringBoot e di avere qualcosa di questo tipo:
@PostMapping("/sbcsaj/v1/bacheca") @ResponseBody public String servizioTest(@RequestParam(name = "gestione") String gestione) { ....corpo del metodo }
Stiamo esponendo in questo caso un servizio al path “/sbcsaj/v1/bacheca” che avrà come parametro in ingresso una stringa che dovrà chiamarsi “gestione”.
Per testare il corretto funzionamento di questo servizio su Postman non si dovrà fare altro che impostare la chiamata POST, inserire l’url da chiamare (preceduto dalla macchina su cui risiede il servizio e che in questo caso è http://localhost:8080) e inserire nel tab Body la stringa denominata “gestione” necessaria per chiamare correttamente il servizio creato.
Nell’esempio è stato selezionato dal menù a tendina il valore JSON(application/json) ed è stato inserito il valore {“gestione” : “G”}.
Arrivati a questo punto, se tutto è stato inserito nella maniera corretta sarà possibile effettuare il test vero e proprio.
Per fare ciò è necessario semplicemente premere il tasto “Send” che si trova nella parte alta a destra e attendere la risposta da parte del server come mostrata nella figura seguente.
Altre funzionalità di Postman
Riepilogando, Postman è uno strumento molto utile e probabilmente il più utilizzato a livello mondiale per tutti gli sviluppatori di software e tutti gli utilizzatori di API. Postman permette di:
- Testare le API: Postman consente di inviare facilmente richieste HTTP alle API e di visualizzare le risposte, semplificando il processo di test delle API.
- Sviluppare le API: grazie alle funzionalità avanzate come la creazione di richieste personalizzate e la gestione delle autorizzazioni, gli sviluppatori possono utilizzare Postman per sviluppare e debuggare le loro API.
- Documentare le API: Postman consente di generare automaticamente documentazione delle API, semplificando il processo di condivisione delle informazioni sulle API con gli utenti.
- Automatizzare i test: gli utenti possono utilizzare Postman per creare script di test automatizzati per le loro API, semplificando il processo di testing e risparmiando tempo.
- Collaborazione tra team: Postman consente di condividere raccolte di richieste e di collaborare con altri membri del team, semplificando il processo di sviluppo e di gestione delle API.
Postman: conclusioni
Come si può notare, anche per quanto riguarda la tipologia di risposta si potrà utilizzare JSON che offre sicuramente una migliore visualizzazione. Allo stesso modo è anche possibile selezionare altre tipologie di formati di risposta come ad esempio XML,HTML ecc.
Attraverso Postman è possibile testare qualsiasi tipo di servizio in maniera semplice e veloce grazie anche alla sua interfaccia abbastanza intuitiva. Tra i vari vantaggi che offre Postman è possibile trovare la cronologia con tutte le chiamate effettuate e con tutte le autenticazioni utilizzate.
Per concludere, è possibile affermare con assoluta certezza che prima di conoscere queste strumento utilissimo, testare le API era veramente una scocciatura non da poco. Bisognava costruirsi un driver adeguato per effettuare qualsiasi tipologia di chiamata e molto spesso il formato delle risposte ricevute era formattato in maniera inguardabile e difficile da decifrare. Con Postman tutto questo non succede, rapidità di esecuzione e risultati facilissimi da leggere e formattati in maniera pressocché perfetta.
Per qualsiasi dubbio o informazione sull’installazione e l’utilizzo di Postman, puoi lasciare un messaggio nel box in basso e qualcuno ti risponderà il prima possibile.
POTREBBE INTERESSARTI: