Aller au contenu principal

4-1 Premier test Postman

Postman permet d'exécuter des tests automatisés pour les requêtes D'API. Cela permet, entre autres, de:

  • Vérifier que le résultat (contenu reçu) est celui attendu
  • Vérifier le code de retour (200, 404, etc.)
  • Vérifier que la requête est un succès
  • Etc.
info

Les tests sont écrits en JavaScript, utilisant une syntaxe propre à Postman via l'utilisation d'une variable pm qui expose un objet JavaScript.

La documentation complète Postman sur les tests est disponible ici:

Comme premier test, utilisons la requête permettant d'obtenir la liste de projets, soit Obtenir liste de projets et utilisant l'URL suivante: {{baseUrl}}/projets.

Accéder à l'onglet Tests

Lorsque dans une requête, vous remarquerez qu'il existe un onglet Scripts avec une section Post-res (pour Post Response, après la réponse).

img

C'est dans cet onglet et cette section que vous pourrez écrire votre code JavaScript pour tester les requêtes.

Écrire un test

Un test de base a la structure suivante:

pm.test("Le code de réponse est 200", function () {
pm.response.to.have.status(200);
});

Décortiquons le tout ensemble:

  • pm.test est une fonction postman pour exécuter un test et prends 2 arguments
  • 1er argument: Le nom du test (ce qu'on désire vérifier). "Le code de réponse est 200" dans l'exemple, est le nom du test, soit ce qui doit être vérifié
  • 2e argument: une fonction anonyme qui contient le test à exécuter
  • Contenu de la fonction: des vérifications à effectuer sur le retour de la requête.
À propos de la variable pm

La variable pm (pour PostMan) expose un objet JavaScript contenant plusieurs propriétés permettant d'accéder au contenu de la requête ou encore de contrôler l'exécution d'un test (ex.: pm.test, pm.expect, .to.be.not.empty, etc.)

Exécuter le test

Lors de l'envoi de la requête, via le bouton Send, les tests dans l'onglet Tests sont automatiquement exécutés.

Dans la portion Response dans le bas, un onglet Test Results vous renseignera sur l'état des tests.

img

Vérifier la réponse

Pour vérifier le retour d'une requête, on peut utiliser l'objet pm.response dans le test.

Plusieurs fonctions et objets sont disponibles sur pm.response et l'autocomplétion de Postman peut vous aider:

img

Vérifier le code de retour

Dans l'exemple précédent, on vérifie que la réponse a le code 200:

pm.test("Le code de réponse est 200", function () {
pm.response.to.have.status(200);
});

Vérifier que la réponse est OK (200)

Postman fournit une façon simple de vérifier que la requête est un succès, par exemple:

pm.test("La réponse est un succès", function () {
pm.response.to.be.ok;
});

Vérifier que la réponse contient du JSON

pm.test("La réponse est un succès et contient du JSON", function () {
pm.response.to.be.ok;
pm.response.to.be.withBody;
pm.response.to.be.json;
});

Ce test vérifie que:

  • pm.response.to.be.ok Le code de retour est bien OK (200)
  • pm.response.to.be.withBodyLa réponse contient un body (n'est pas vide)
  • pm.response.to.be.json Le body de la réponse est du JSON (et donc pas autre chose comme du HTML ou du XML, par exemple)